isinstance()
是 Python 内置函数之一,用于判断一个对象是否属于指定的类型,返回布尔值 True
或 False
。它的语法如下:
pythonCopy code isinstance(object, classinfo)
其中,object
表示要判断的对象,classinfo
表示类型。如果 object
是 classinfo
的实例,或者是 classinfo
的子类的实例,则返回 True
;否则返回 False
。
在 Python 中,一切皆对象。除了基本数据类型如整数、浮点数、字符串等,其他所有的东西都是对象。比如一个函数、一个模块、一个列表、一个元组、一个字典,甚至是一个类,都是对象。因此 isinstance()
可以用来判断一个对象是否是某种类型,例如:
pythonCopy code a = 5 b = "hello" c = [1, 2, 3] d = (4, 5, 6) e = {"name": "Tom", "age": 18} print(isinstance(a, int)) # True print(isinstance(b, str)) # True print(isinstance(c, list)) # True print(isinstance(d, tuple)) # True print(isinstance(e, dict)) # True
可以看到,我们分别定义了一个整数 a
,一个字符串 b
,一个列表 c
,一个元组 d
和一个字典 e
,然后使用 isinstance()
函数判断它们的类型。如果它们的类型和参数中指定的类型匹配,那么函数返回 True
,否则返回 False
。
除了基本数据类型和内置类型,Python 还支持自定义类型。例如,我们可以定义一个类 Person
,用于表示一个人的信息:
pythonCopy code class Person: def __init__(self, name, age): self.name = name self.age = age p = Person("Tom", 18) print(isinstance(p, Person)) # True
这里我们定义了一个类 Person
,它有两个属性 name
和 age
。然后我们创建了一个 Person
对象 p
,并使用 isinstance()
函数判断它是否是 Person
类型的对象。由于 p
是 Person
类的实例,所以函数返回 True
。
isinstance()
函数常常用于类型判断和类型转换。比如,我们可以使用 isinstance()
函数判断一个对象是否是可迭代对象(即是否可以使用 for
循环遍历),如果是,则可以将它转换成列表或者其他序列类型。
本文地址:https://my.lmcjl.com/functions/isinstance
版权声明:个人博客原创文章,转载请注明出处和网址。
,欢迎加入。
本文链接:https://my.lmcjl.com/post/4716.html
4 评论