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)
    

     执行结果如下:

    D:softwarePython2.7.13python.exe C:/Users/Administrator/PycharmProjects/PythonStudy/test.py
    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

  • 相关阅读:
    七.贪心算法
    六。二叉树
    从git指定commit拉分支
    二分法
    mysql 解决生僻字,特殊字符插入失败
    MYSQL性能优化以及建议
    PDF快捷键
    GC 核心关注点都在这里
    R语言载入包时报错:Error: 程辑包‘survival’没有名字空间
    Centos buff/cache过高
  • 原文地址:https://www.cnblogs.com/java-chanjuan/p/7099778.html
Copyright © 2011-2022 走看看