如何确定Python变量的类型?

在python中有两种内置方法可用来确定变量的类型。

1)type()方法

如果将单个参数传递给type(),则返回给定对象的类型。

语法:

    type(object)

示例

>>> test_string = "yes"
>>> test_number = 1
>>> print(type(test_string))
<class 'str'>
>>> print(type(test_number))
<class 'int'>

2)isinstance()方法

isinstance()函数检查对象(第一个参数)是否是classinfo类(第二个参数)的实例或子类

语法:

    isinstance(object, classinfo)

在这里,对象:要验证的对象,以及类信息:类,类型或类和类型的元组

返回值:如果对象是类的实例或子类或元组的任何元素,则返回true,否则返回false。如果classinfo不是类型或类型的元组,则会引发TypeError异常。

示例

>>> class Example:
...     name = 'include_help'
...
>>> ExampleInstance = Example()
>>> print(isinstance(ExampleInstance, Example))
True
>>> print(isinstance(ExampleInstance, (list, set)))
False
>>> print(isinstance(ExampleInstance, (list, set, Example)))
True
>>>

type()和之间的比较isinstance()

type()isinstance()
它返回一个对象的类型对象,并且将返回的值与另一个类型对象进行比较,只有当相同类型的对象在两边时,才返回True。为了查看对象是否具有某种类型,请使用isinstance()它来检查在第一个参数中传递的对象是否具有在第二个参数中传递的任何类型的对象的类型。因此,它可以按预期与子类和旧式类一起使用,它们都具有旧式对象实例。