isinstance()函数作用
时间: 2023-11-07 18:24:31 浏览: 41
isinstance()函数用于检查一个对象是否是一个特定类或类的子类的实例。它的语法是:
isinstance(object, classinfo)
其中,object是要检查的对象,classinfo可以是一个类、类型元组或类型列表。如果object是classinfo的实例,则返回True;否则返回False。这个函数在面向对象编程中非常有用,可以帮助我们判断一个对象的类型,从而进行相应的操作。
相关问题
isinstance函数
isinstance函数是Python中的一个内置函数,用于判断一个对象是否属于某个特定的类或子类。它的语法格式为:
```python
isinstance(object, classinfo)
```
其中,object是要判断的对象,classinfo可以是一个类或者由多个类对象组成的元组。如果object是classinfo的一个实例或者是其子类的实例,则返回True,否则返回False。下面是一个示例:
```python
class Animal:
pass
class Dog(Animal):
pass
dog = Dog() # 创建一个Dog类的实例对象
print(isinstance(dog, Dog)) # True,dog是Dog类的实例
print(isinstance(dog, Animal)) # True,Dog是Animal类的子类,所以dog也是Animal类的实例
print(isinstance(dog, int)) # False,dog不是int类的实例
```
在上面的示例中,我们创建了一个Animal类和一个Dog类,并将Dog类定义为Animal类的子类。然后我们创建了一个Dog类的实例dog,并使用isinstance函数分别判断dog是否为Dog类、Animal类或int类的实例。最终的输出结果表明,dog是Dog类和Animal类的实例,但不是int类的实例。
python isinstance函数
`isinstance()` 函数是 Python 中用于检测一个对象是否是一个已知的类型的函数。
语法:
```
isinstance(object, classinfo)
```
参数说明:
- `object`:需要检测的对象
- `classinfo`:class, type, 元组中的类型, 元组中可以放类,可以放类型
返回值:如果对象是类型或者类型的子类,则返回 True,否则返回 False。
例子:
```
x = [1, 2, 3]
y = (1, 2, 3)
z = "hello"
print(isinstance(x, list))
print(isinstance(y, tuple))
print(isinstance(z, str))
```
输出:
```
True
True
True
```
注意: isinstance 只能用于类型检测,不能用于检测对象是否有特定属性。
例如 : isinstance(obj, str) 不能用来检测 obj 是否可以 .lower(),而应该使用 callable(getattr(obj, 'lower', None))
阅读全文