Cara Memeriksa apakah Daftar Kosong dengan Python (Nilai Kebenaran Python)

Pelajari cara paling pythonic untuk memeriksa apakah suatu daftar kosong dengan Python. Bandingkan pemeriksaan boolean implisit dengan perbandingan panjang.

Coba Solusi ini di Editor

Ikhtisar

Dalam pengembangan Python, Anda sering kali perlu memverifikasi apakah suatu daftar berisi elemen sebelum mencoba membaca, memodifikasi, atau memproses isinya. Mengakses elemen daftar kosong menggunakan tanda kurung (misalnya, `daftar_saya[0]`) akan memunculkan `IndexError`, yang menghentikan eksekusi program. Oleh karena itu, penerapan pola pemeriksaan yang bersih dan defensif sangat penting untuk stabilitas aplikasi.

Cara paling Pythonic untuk memeriksa apakah suatu daftar kosong adalah dengan menggunakan nilai boolean implisitnya (kebenaran). Di Python, koleksi kosong (termasuk daftar, kamus, tupel, dan kumpulan) bernilai `False` dalam konteks boolean, sedangkan koleksi yang terisi bernilai `True`. Penulisan `if not my_list:` bersifat langsung, mudah dibaca, dan sesuai dengan pedoman PEP 8.

Saat membandingkan panjang daftar dengan nol (misalnya, `if len(my_list) == 0:`) atau membandingkan daftar secara langsung dengan literal daftar kosong (misalnya, `if my_list == []:`) juga berhasil, pendekatan ini umumnya tidak disarankan karena kurang ringkas dan bisa sedikit lebih lambat. Menggunakan pengujian nilai kebenaran bawaan Python membuat kode Anda lebih bersih dan efisien.

Kode & Output Eksekusi

Skrip ini menunjukkan metode berbeda untuk memeriksa apakah suatu daftar kosong dengan Python.

empty_list_check.py
Coba di Editor
empty_list = []
full_list = [10, 20, 30]

# Method 1: The Pythonic Way (Implicit boolean check)
if not empty_list:
    print("empty_list is indeed empty!")

if full_list:
    print("full_list has elements inside!")

# Method 2: Length comparison (Less Pythonic, but functional)
if len(empty_list) == 0:
    print("Length of empty_list is 0.")
Keluaran Terminal
empty_list is indeed empty!
full_list has elements inside!
Length of empty_list is 0.

Implementasi Langkah demi Langkah

  • Tulis jika bukan my_list: untuk memeriksa apakah daftar tersebut kosong (pendekatan paling pythonic).
  • Tulis if my_list: untuk memeriksa apakah daftar berisi satu atau lebih elemen.
  • Hindari penggunaan len(my_list) == 0 atau my_list == [] untuk memeriksa kekosongan.

Pertanyaan yang Sering Diajukan

Mengapa 'jika bukan daftar_saya' lebih disukai daripada 'jika len(daftar_saya) == 0'?

Ini lebih mudah dibaca, idiomatis, dan sedikit lebih cepat karena menghindari pemanggilan fungsi len() dan perbandingan bilangan bulat.

Apakah pemeriksaan ini berfungsi untuk koleksi lain seperti kamus atau tupel?

Ya, aturan kebenaran yang sama berlaku untuk dicts kosong ({}), tupel kosong (()), set kosong (set()), dan string kosong ("").

Topik Terkait

Sumber Daya Python yang Direkomendasikan

Perluas pengetahuan Anda dengan tutorial interaktif terkait, lembar contekan, dan perbandingan kode.