Periksa apakah nilai termasuk tipe bawaan, kelas nilai DSL, atau kelas yang ditentukan pengguna. Nilai tidak dikonversi.
Sintaks
isinstance(value, class_or_tuple, /)Parameter
| Nama | Deskripsi |
|---|---|
valueAny | Nilai yang akan diperiksa. Wajib · Hanya posisi Tanpa nilai bawaan |
class_or_tupleType | tuple[Type, ...] | Gunakan referensi tipe tanpa tanda kutip: bool, int, float, str, list, tuple, dict, set, range, enumerate, zip; kelas nilai DSL seperti Point, Match, atau AudioMatch; atau kelas yang ditentukan pengguna. Tuple dapat bersarang dan diperiksa dari kiri ke kanan sampai ditemukan kecocokan. Entri tidak valid yang ditemukan sebelum kecocokan akan memunculkan TypeError. String dan type(value) ditolak karena type() mengembalikan teks. Flow, System, Storage, Touch, ScreenCapture, dan Recognition adalah namespace atau konteks, bukan tipe. Wajib · Hanya posisi Tanpa nilai bawaan |
Nilai yang dikembalikan
Boolean — True jika tipenya cocok; selain itu False, termasuk untuk tuple kosong. bool juga cocok dengan int; int dan float adalah tipe yang berbeda. Kelas yang ditentukan pengguna dicocokkan berdasarkan definisinya, meskipun namanya sama.Contoh
# Periksa tipe nilai sebelum menggunakannya
value = 42
if isinstance(value, (int, float)):
print(value + 1)
print(isinstance(Point(10, 20), Point))