Python 常用内置函数详解:isinstance()函数----判断对象是否是类或子类
isinstance()
函数是Python内置的一个函数,它用于判断一个对象是否是一个特定类型或者是这个类型的子类的实例。
函数的语法如下:
isinstance(object, classinfo)
其中,object
是需要检查的对象,classinfo
是类型(tuple),可以是基本数据类型(如int, float, str),也可以是类或者类的元组。
如果对象是classinfo的实例,或者对象是classinfo中定义的类的子类的实例,则返回True,否则返回False。
下面是一些使用isinstance()
函数的例子:
- 判断一个对象是否是字符串:
a = "Hello, World"
print(isinstance(a, str)) # 输出: True
- 判断一个对象是否是整数:
b = 123
print(isinstance(b, int)) # 输出: True
- 判断一个对象是否是某个类的实例:
class A:
pass
class B(A):
pass
b_obj = B()
print(isinstance(b_obj, A)) # 输出: True
- 判断一个对象是否是多个类中的某个类的实例:
print(isinstance(b_obj, (A, dict, list))) # 输出: False
- 判断一个变量是否是某种类型,或者是其子类的实例:
def func(var):
if isinstance(var, (str, int, float)):
print(f"{var} 是数字、字符串或浮点型")
else:
print(f"{var} 不是数字、字符串或浮点型")
func(123) # 输出: 123 是数字、字符串或浮点型
func("Hello, World") # 输出: Hello, World 是数字、字符串或浮点型
func([1, 2, 3]) # 输出: [1, 2, 3] 不是数字、字符串或浮点型
以上就是isinstance()
函数的基本使用方法。
评论已关闭