Rumah > pembangunan bahagian belakang > Tutorial Python > Gunakan fungsi isinstance() Python untuk menentukan sama ada objek tergolong dalam kelas tertentu

Gunakan fungsi isinstance() Python untuk menentukan sama ada objek tergolong dalam kelas tertentu

王林
Lepaskan: 2023-08-22 11:52:51
asal
1759 orang telah melayarinya

Gunakan fungsi isinstance() Python untuk menentukan sama ada objek tergolong dalam kelas tertentu

Gunakan fungsi isinstance() Python untuk menentukan sama ada objek tergolong dalam kelas tertentu

Dalam Python, kita selalunya perlu menentukan sama ada objek tergolong dalam kelas tertentu. Untuk memudahkan pertimbangan kategori, Python menyediakan fungsi terbina dalam isinstance(). Artikel ini akan memperkenalkan penggunaan fungsi isinstance() dan memberikan contoh kod. Fungsi

isinstance() boleh menentukan sama ada objek tergolong dalam kelas yang ditentukan atau kelas terbitan kelas tersebut. Sintaksnya adalah seperti berikut:

isinstance(objek, info kelas)

Antaranya, objek ialah objek yang akan dinilai, dan classinfo boleh menjadi satu kelas atau tuple yang terdiri daripada kelas. Jika objek milik salah satu kelas atau kelas terbitannya, fungsi isinstance() akan mengembalikan True, jika tidak, ia mengembalikan False.

Berikut ialah contoh mudah yang menunjukkan cara menggunakan fungsi isinstance() untuk menentukan jenis objek:

class Dog:
    def __init__(self, name):
        self.name = name

class Cat:
    def __init__(self, name):
        self.name = name

dog = Dog("旺财")
cat = Cat("小花")

print(isinstance(dog, Dog))  # 输出:True
print(isinstance(dog, Cat))  # 输出:False
print(isinstance(cat, (Dog, Cat)))  # 输出:True
Salin selepas log masuk

Dalam contoh di atas, kami menentukan dua kelas Dog dan Cat, yang kedua-duanya mempunyai nama atribut. Kemudian kami mencipta objek anjing dan objek kucing. Melalui fungsi isinstance(), kami menentukan sama ada objek anjing tergolong dalam kelas Dog, sama ada objek kucing tergolong dalam kelas Cat dan sama ada objek kucing tergolong dalam kelas Dog atau kelas Cat.

Selain menentukan jenis objek tunggal, fungsi isinstance() juga boleh menentukan sama ada objek tergolong dalam mana-mana berbilang kelas.

Perlu diperhatikan bahawa fungsi isinstance() juga boleh digunakan untuk menentukan hubungan pewarisan jenis objek. Maksudnya, jika kelas mewarisi kelas lain, fungsi isinstance() boleh menentukan sama ada objek itu tergolong dalam kelas induk atau subkelas.

Berikut ialah contoh yang lebih kompleks yang menunjukkan penghakiman warisan bagi fungsi isinstance():

class Animal:
    pass

class Mammal(Animal):
    pass

class Dog(Mammal):
    def __init__(self, name):
        self.name = name

class Cat(Mammal):
    def __init__(self, name):
        self.name = name

dog = Dog("旺财")
cat = Cat("小花")

print(isinstance(dog, Dog))  # 输出:True
print(isinstance(dog, Mammal))  # 输出:True
print(isinstance(dog, Animal))  # 输出:True
print(isinstance(cat, Mammal))  # 输出:True
print(isinstance(cat, Animal))  # 输出:True
print(isinstance(dog, Cat))  # 输出:False
Salin selepas log masuk

Dalam contoh di atas, kami mentakrifkan kelas Haiwan dan kelas Mamalia sebagai kelas induk, dan kemudian menentukan kelas Anjing dan Kelas kucing ialah subkelas kelas Mamalia. Melalui fungsi isinstance(), kami menentukan sama ada objek anjing tergolong dalam kelas Anjing, kelas Mamalia dan kelas Haiwan, sama ada objek kucing tergolong dalam kelas Mamalia dan kelas Haiwan, dan sama ada objek anjing itu tergolong dalam kelas Kucing.

Melalui pengenalan artikel ini, kita dapat melihat bahawa kita boleh dengan mudah menentukan sama ada objek tergolong dalam kelas tertentu melalui fungsi isinstance(). Dalam pembangunan sebenar, menguasai penggunaan fungsi isinstance() boleh membantu kami mengendalikan pertimbangan jenis objek dan memproses logik dengan lebih fleksibel. Jika anda berminat dengan pertimbangan kategori Python, anda mungkin ingin berlatih menggunakan fungsi isinstance() dalam projek sebenar, saya percaya ia akan membantu kemahiran pengaturcaraan anda.

Atas ialah kandungan terperinci Gunakan fungsi isinstance() Python untuk menentukan sama ada objek tergolong dalam kelas tertentu. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan