Python Tambahan #11 Fungsi isinstance() dan id()

profil-penulis

Yuliance Ardies Ferry w.Yehohanan

22 April 2025

Dalam Python, penting untuk mengetahui jenis dari sebuah data (apakah string, integer, list, dll) serta identitas unik dari suatu objek di memori. Untuk tujuan ini, Python menyediakan dua fungsi bawaan yang sangat berguna:

  • isinstance() untuk memeriksa tipe data

  • id() untuk mengetahui alamat identitas objek di memori
     

Fungsi isinstance(): Cek Tipe Data

isinstance(obj, tipe) mengembalikan True jika obj merupakan instance dari tipe tertentu, dan False jika tidak.

Contoh:

x = 10
print(isinstance(x, int))     # True
print(isinstance(x, str))     # False

Dukungan Banyak Tipe Sekaligus

print(isinstance(x, (int, float)))  # True, karena x adalah int

Fungsi id(): Cek Identitas Objek

Fungsi id(obj) mengembalikan alamat unik dari objek di memori selama program berjalan. Cocok untuk membandingkan apakah dua variabel menunjuk ke objek yang sama.

Contoh:

a = [1, 2, 3]
b = a
c = [1, 2, 3]

print(id(a) == id(b))  # True (karena menunjuk ke objek yang sama)
print(id(a) == id(c))  # False (isi sama, tapi objek berbeda)

isinstance() vs type()

Meski keduanya bisa digunakan untuk memeriksa tipe data, isinstance() lebih fleksibel karena mendukung pengecekan terhadap turunan class (inheritance). Sebaliknya, type() hanya cocok untuk perbandingan tipe secara langsung.
 

Contoh Penggunaan Praktis

Validasi Input:

def tampilkan(data):
    if isinstance(data, list):
        for item in data:
            print(item)
    else:
        print("Bukan list!")

Debugging dengan id():

print(id(variable))  # Untuk melacak jika dua variabel merujuk ke objek yang sama


Fungsi isinstance() dan id() sangat penting dalam menulis kode Python yang aman, eksplisit, dan dapat di-debug. isinstance() membantu memverifikasi tipe data sebelum menjalankan logika tertentu, sedangkan id() membantu memahami hubungan antar objek di memori.

Artikel Lainnya Dengan Kategori Terkait :


1. Python Tambahan #01 F-String: Format String Modern

2. Python Tambahan #02 Penulisan Panjang Kode di Dalam Fungsi

3. Python Tambahan #03 Komentar: Docstring dan Tanda #

4. Python Tambahan #04 Membuat List dari String atau Karakter

5. Python Tambahan #05 Perbedaan Positional dan Keyword Argument

6. Python Tambahan #06 Menggunakan Tanda *args dan **kwargs

7. Python Tambahan #07 Fungsi Bawaan: zip(), map(), dan filter()

8. Python Tambahan #08 Penggunaan any() dan all()

9. Python Tambahan #09 Fungsi enumerate() dalam Looping

10. Python Tambahan #10 Fungsi reversed() dan sorted()

11. Python Tambahan #11 Fungsi isinstance() dan id()

12. Python Tambahan #12 Pemrosesan String: replace(), strip(), split()

13. Python Tambahan #13 Menggabungkan String dengan join()

14. Python Tambahan #14 Mengatur Format Tampilan Angka dan Tanggal

15. Python Tambahan #15 Menggunakan Operator Ternary di Python

16. Python Tambahan #16 Destructuring: Unpacking List dan Tuple

17. Python Tambahan #17 Tuple Packing dan Unpacking

18. Python Tambahan #18 Dictionary Comprehension

19. Python Tambahan #19 Set Comprehension dan Operasi Dasarnya

20. Python Tambahan #20 List vs Generator: Apa Bedanya?

21. Python Tambahan #21 Fungsi Generator dengan yield

22. Python Tambahan #22 Menulis Fungsi Lambda yang Ringkas

23. Python Tambahan #23 Fungsi dalam Fungsi (Nested Function)

24. Python Tambahan #24 Fungsi sebagai Argumen dan Return

25. Python Tambahan #25 Pemrosesan File Teks: with open()

26. Python Tambahan #26 Membaca dan Menulis File JSON di Python

27. Python Tambahan #27 Format CSV: Membaca dan Menulis File CSV

Masuk Terlebih dahulu untuk berkomentar

Paling baru
Lihat Lainnya