zoukankan      html  css  js  c++  java
  • Python 判断数据类型有type和isinstance

    Python 判断数据类型有type和isinstance

    基本区别在于:

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

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

    1
    2
    3
    4
    5
    6
    7
    8
    9
    class Color(object):
        pass
     
    class Red(Color):
        pass
     
    print type(Color()) == Color
    print type(Red()) == Color
    print isinstance(Red(),Color)

     执行结果如下:

    1
    2
    3
    4
    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

  • 相关阅读:
    前后端分类状态下SpringSecurity的玩法
    拓展 centos 7
    linux 日志管理
    Linux 内存监控
    Linux 周期任务
    Linux 文件系统
    linux 磁盘管理
    图论 最短路总结
    进阶线段树之乘法操作
    暑假集训Day 10 小烈送菜
  • 原文地址:https://www.cnblogs.com/zhaoyq/p/7886293.html
Copyright © 2011-2022 走看看