python 判断数据类型及释疑

Posted dingjiaoyang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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():

 

以上是关于python 判断数据类型及释疑的主要内容,如果未能解决你的问题,请参考以下文章

python编码及类型转换

01 JS的数据类型及如何判断数据类型

javascript数据类型及判断

目录-基本数据类型

javascript数据类型及数据类型判断的四种方法

Python基础及规则