zoukankan      html  css  js  c++  java
  • python 判断数据类型及释疑

    Python 判断数据类型有type和isinstance

    基本区别在于:

    type():不会认为子类是父类

    isinstance():会认为子类是父类类型

    class Color(object):
    pass

    class Red(Color):
    pass

    print type(Color()) == Color
    print type(Red()) == Color
    print isinstance(Red(),Color)
    执行结果如下:

    True
    False
    True

    用isinstance判断mongDB中的一些数据类型:

    字符串、int、long、float - isinstance(data, (int, str, types.LongType, float))
    时间类型 - isinstance(data, datetime.datetime)
    布尔类型 - isinstance(data, (bool))
    字典类型 - isinstance(data, (dict))
    数组 - isinstance(data, (list))
    unicode - isinstance(data, unicode)
    mongo obJect - isinstance(data, bson.objectid.ObjectId)

    可以引入types模板,获取数据类型:

    inport types

    types取值:

      BooleanType
      BufferType
      BuiltinFunctionType
      BuiltinMethodType
      ClassType
      CodeType
      ComplexType
      DictProxyType
      DictType
      DictionaryType
      EllipsisType
      FileType
      FloatType
      FrameType
      FunctionType
      GeneratorType
      GetSetDescriptorType
      InstanceType
      IntType
      LambdaType
      ListType
      LongType
      MemberDescriptorType
      MethodType
      ModuleType
      NoneType
      NotImplementedType
      ObjectType
      SliceType
      StringType
      StringTypes
      TracebackType
      TupleType
      TypeType
      UnboundMethodType
      UnicodeType
      XRangeType

    python 2 实例:

    import types
    type(x) is types.IntType # 判断是否int 类型
    type(x) is types.StringType #是否string类型

    还可以:

    import types
    type(x) == types(1) # 判断是否int 类型
    type(x) == type('a') #是否string类型

    python 3 实例:

    if type(fileJson) is dict:
    if type(fileJson) == dict:
    if type(fileJson) == type({}):

  • 相关阅读:
    JavaScript最佳实践
    Ionic2学习笔记(3):Pipe
    广商14级软件工程分数:第十一回合
    Ionic2学习笔记(2):自定义Component
    Ionic2学习笔记(1):新建一个页面
    Ionic2学习笔记(0):HelloWorld
    采用Kettle分页处理大数据量抽取任务
    广商14级软件工程分数:第十回合
    广商14级软件工程分数:第九回合
    广商14级软件工程-项目介绍视频汇总
  • 原文地址:https://www.cnblogs.com/dingjiaoyang/p/10999287.html
Copyright © 2011-2022 走看看