Python isinstance() 函数



Python isinstance() 函数用于确定指定的对象是特定类的实例还是其子类的实例。

此外,我们可以使用此函数进行类型检查。如果指定的对象是指定的类型,则 isinstance() 函数返回 True,否则返回 false。

isinstance() 是内置函数之一,不需要导入任何模块即可使用它。

语法

以下是 python isinstance() 函数的语法。


 isinstance(object, type)

参数

以下是 Python isinstance() 函数的参数 -

  • object − 此参数指定对象,例如 string、int、float 或 long。
  • type − 此参数指定需要检查对象的类或类型。

返回值

Python isinstance() 函数返回一个布尔值。

isinstance() 函数示例

练习以下示例来理解 Python 中 isinstance() 函数的用法:

示例:使用 isinstance() 函数

以下是 python isinstance() 函数的示例。在此,我们定义了一个数值,并尝试验证它是否为 integer 类型。


nums = 5
output = isinstance(nums, int)
print("The given number is instance of integer:", output)

在执行上述程序时,将生成以下输出 -

The given number is instance of integer: True

示例:具有多个类型参数的 isinstance() 函数

我们还可以将多个类型参数传递给 isinstance() 函数。在这里,我们定义了一个字符串并检查它是否是 string 和 bytes 类型。


strName = "qikepu"
output = isinstance(strName, (str, bytes))
print("The given string is instance of string:", output)

以下是执行上述程序得到的输出 -

The given string is instance of string: True

示例:使用 isinstance() 函数检查类的子类

在下面的示例中,我们定义了一个类及其子类。然后,在 isinstance() 函数的帮助下,我们检查它是否是指定类的子类。


class Seasons:
	 	pass

class Spring(Seasons):
	 	pass

springObj = Spring()
output = isinstance(springObj, Seasons)
print("The given object is instance of Seasons class:", output)

通过执行上述程序获得以下输出 -

The given object is instance of Seasons class: True

示例:使用 isinstance() 函数检查 NoneType 对象

isinstance() 函数还允许我们检查对象是否为 NoneType,如下例所示。


varNone = None
output = isinstance(varNone, type(None))
print("The given variable is instance of None:", output)

上述程序在执行时显示以下输出 -

The given variable is instance of None: True