isinstance

Periksa apakah nilai termasuk tipe bawaan, kelas nilai DSL, atau kelas yang ditentukan pengguna. Nilai tidak dikonversi.

Sintaks

isinstance(value, class_or_tuple, /)

Parameter

NamaDeskripsi
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))