Daftar Referensi Python

isinstance() adalah fungsi bawaan untuk memeriksa apakah sebuah objek bertipe tertentu — mengembalikan True jika objek adalah instance dari kelas yang diberikan.

Sintaks

isinstance(objek, kelas)

Parameter

Parameter Wajib? Keterangan
objek Ya Objek yang akan diperiksa tipenya
kelas Ya Kelas (mis. int) atau tuple berisi beberapa kelas (mis. (int, float))

Nilai balik: bool (True atau False).

Contoh

umur = 17

print(isinstance(umur, int))
print(isinstance(umur, str))

Coba di IDE

Output:

True
False

Contoh Lainnya

Beberapa tipe sekaligus (pakai tuple)

nilai = 3.14

print(isinstance(nilai, (int, float)))

Coba di IDE

Output:

True

Validasi argumen fungsi

def tambah(a, b):
    if not isinstance(a, (int, float)):
        return "a harus angka"
    return a + b

print(tambah(5, 3))
print(tambah("lima", 3))

Coba di IDE

Output:

8
a harus angka

Perhatikan: bool adalah turunan int

print(isinstance(True, int))
print(type(True) == int)

Coba di IDE

Output:

True
False

Kesalahan Umum

  • isinstance(x, int) juga True untuk bool, karena bool adalah turunan (subclass) dari int.
  • Argumen kedua harus kelas atau tuple kelas, bukan string: isinstance(x, "int")TypeError.
  • Untuk mencocokkan tipe secara persis (tanpa memperhitungkan turunan), pakai type(x) is int. Untuk kebutuhan umum, isinstance() lebih dianjurkan.

Pelajari Lebih Lanjut