python中isinstance如何用
时间: 2023-12-26 08:04:29 浏览: 22
`isinstance` 是 Python 中的一个内置函数,用于判断一个对象是否是指定类型或其子类的实例。
`isinstance` 的语法如下:
```python
isinstance(object, classinfo)
```
其中,`object` 表示要判断的对象,`classinfo` 表示要判断的类型或其元组。
例如,判断一个变量 `x` 是否是整数类型的对象,可以使用以下代码:
```python
x = 10
if isinstance(x, int):
print("x 是整数类型")
else:
print("x 不是整数类型")
```
如果要同时判断一个对象是否是多个类型中任意一种类型的实例,可以将这些类型放在一个元组中,如下所示:
```python
x = "hello"
if isinstance(x, (int, str, list)):
print("x 是 int、str 或 list 中的一种类型")
else:
print("x 不是 int、str 或 list 中的任何一种类型")
```
相关问题
python 中 isinstance 使用案例
示例1:
```
a = 5
b = "hello"
print(isinstance(a, int))
print(isinstance(b, int))
```
输出:
```
True
False
```
解释:
- `a` 是一个整数,因此 `isinstance(a, int)` 返回 `True`。
- `b` 是一个字符串,而不是整数,因此 `isinstance(b, int)` 返回 `False`。
示例2:
```
class Animal:
def __init__(self, name):
self.name = name
class Dog(Animal):
def bark(self):
print("Woof!")
class Cat(Animal):
def meow(self):
print("Meow!")
d = Dog("Rover")
c = Cat("Fluffy")
print(isinstance(d, Dog))
print(isinstance(c, Dog))
print(isinstance(d, Animal))
print(isinstance(c, Animal))
```
输出:
```
True
False
True
True
```
解释:
- `d` 是一个 `Dog` 对象,因此 `isinstance(d, Dog)` 返回 `True`。
- `c` 是一个 `Cat` 对象,而不是 `Dog` 对象,因此 `isinstance(c, Dog)` 返回 `False`。
- `d` 是一个 `Dog` 对象,同时也是 `Animal` 对象,因此 `isinstance(d, Animal)` 返回 `True`。
- `c` 是一个 `Cat` 对象,同时也是 `Animal` 对象,因此 `isinstance(c, Animal)` 返回 `True`。
python中isinstance怎么用
`isinstance()` 是Python内置的函数,用于判断一个对象是否是某个类或其子类的实例。它的语法格式如下:
```
isinstance(object, classinfo)
```
其中,`object` 是要判断的对象,`classinfo` 可以是一个类或一个由类组成的元组(即判断 `object` 是否是这些类中的一个实例)。
例如,判断一个对象 `obj` 是否是 `int` 类型的实例,可以这样写:
```python
if isinstance(obj, int):
print("obj is an integer")
else:
print("obj is not an integer")
```
也可以同时判断一个对象是否是多个类中的某一个实例,例如:
```python
if isinstance(obj, (str, int, list)):
print("obj is an instance of str, int or list")
else:
print("obj is not an instance of str, int or list")
```