Dalam python, isinstance bermaksud "penghakiman jenis". isinstance() ialah fungsi terbina dalam yang digunakan untuk menentukan sama ada objek adalah jenis yang diketahui Sintaksnya ialah "isinstance(objek, jenis)". tuple, dan Object ialah salah satu jenis dalam tupel, maka fungsi ini juga akan mengembalikan True.
Persekitaran pengendalian tutorial ini: sistem windows7, versi python3, komputer DELL G3
Dalam python, isinstance bermaksud "penghakiman jenis" .
fungsi isinstance() python
fungsi isinstance() untuk menentukan sama ada objek ialah jenis yang diketahui, serupa dengan type().
Perbezaan antara isinstance() dan type():
type() tidak menganggap subkelas sebagai jenis kelas induk dan tidak menganggap hubungan warisan.
isinstance() akan menganggap subkelas sebagai jenis kelas induk dan mempertimbangkan hubungan warisan.
Jika anda ingin menentukan sama ada dua jenis adalah sama, adalah disyorkan untuk menggunakan isinstance().
Fungsi isinstance() mengembalikan True jika objek yang ditentukan mempunyai jenis yang ditentukan, jika tidak, ia mengembalikan False.
Jika parameter jenis ialah tuple, maka fungsi ini akan mengembalikan True jika objek adalah salah satu jenis dalam tupel.
Sintaks:
isinstance(object, type)
参数 | 描述 |
---|---|
object | 必需。对象。 |
type | 类型或类,或类型和/或类的元组。 |
Contoh 1: Semak sama ada "Hello" ialah salah satu jenis yang diterangkan dalam parameter jenis
x = isinstance("Hello", (str, float, int, str, list, dict, tuple)) print(x)
Contoh 2: Semak sama ada y ialah contoh myObj
class myObj: name = "Bill" y = myObj() x = isinstance(y, myObj) print(x)
Pengetahuan lanjutan: perbezaan antara jenis dan isinstance
Dalam python, jenis boleh mendapatkan jenis data objek, dan isinstance boleh menentukan jenis data objek Terdapat dua perbezaan di antara mereka
1. isinstance lebih fleksibel
jenis hanya mengembalikan jenis data objek, manakala isinstance boleh menentukan sama ada jenis data objek ini ialah salah satu daripada beberapa jenis data.
Katakan kita ingin menentukan sama ada jenis data objek adalah int atau terapung Contoh cara menulis dua fungsi adalah seperti berikut
a = 4 # 使用type if type(a) == int or type(a) == float: print('yes') # 使用isinstance if isinstance(a, (int, float)): print('yes')
Jelas sekali, dalam senario ini, isinstance. mempunyai kelebihan
2 Tentukan kewujudan hubungan warisan
class A: pass class B(A): pass a = A() b = B() print(type(b) == A) # False print(isinstance(b, A)) # True
B ialah subkelas A, jenis(b) mengembalikan kelas B, yang bukan. sama dengan A, tetapi B ialah subkelas A. Oleh itu, kita boleh menganggap bahawa b juga merupakan objek A. Dalam menghadapi situasi ini di mana terdapat hubungan pewarisan, isinstance
harus digunakan. Pembelajaran yang disyorkan: Tutorial video Python
Atas ialah kandungan terperinci Apakah maksud isinstance dalam python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!