📜  Python isinstance()函数

📅  最后修改于: 2020-10-30 05:37:48             🧑  作者: Mango

Python isinstance()函数

Python isinstance()函数用于检查给定对象是否是该类的实例。如果对象属于该类,则返回True。否则返回False。如果该类是子类,则它也返回true。

isinstance()函数采用两个参数object和classinfo并返回True或False。该函数的签名在下面给出。

签名

isinstance(object, classinfo)

参量

object:它是字符串,int,float,long或自定义类型的对象。

classinfo:类名。

返回

它返回布尔值True或False。

让我们看一下isinstance()函数的一些示例,以了解其功能。

Python isinstance()函数示例1

在这里,我们将对象和类传递给仅当对象属于类时才返回True的函数。请参见以下示例。

# Python isinstance() function example
class Student:
    id = 101
    name = "John"
    def __init__(self, id, name):
        self.id=id
        self.name=name

student = Student(1010,"John")
lst = [12,34,5,6,767]
# Calling function 
print(isinstance(student, Student)) # isinstance of Student class
print(isinstance(lst, Student))

输出:

True
False

Python isinstance()函数示例2

# Python isinstance() function example
# Declaring variables
val = 10
lst = [12,34,5,6,767]
name = "Mohan"
# Calling function 
print(isinstance(val, int)) # isinstance of int class
print(isinstance(lst, list)) # True
print(isinstance(name, str)) # True
print(isinstance(val, list)) # False

输出:

True
True
True
False

Python isinstance()函数示例3

如果对象属于子类并且class是父类,则此函数还返回True。请参阅下面的示例,它是如何工作的。

# Python isinstance() function example
# Declaring variables

class NumericList(list):
    def __init__(self):
        return None

num = NumericList()
# Calling function 
print(isinstance(num, NumericList)) # True
print(isinstance(num, list)) # True

输出:

True
True