(轉)python 判斷數據類型


原文:https://blog.csdn.net/mydriverc2/article/details/78687269

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:\software\Python2. 7.13 \python.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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM