Memahami Operator Ternary di Python
Di banyak bahasa pemrograman, operator ternary memungkinkan Anda membuat keputusan dalam satu baris kode. Python tidak memiliki operator ternary tradisional seperti ?:
di C atau Java, tetapi menawarkan sintaks yang serupa dan lebih mudah dibaca. Fitur ini membantu menyederhanakan kode dengan mengekspresikan kondisi langsung di dalam satu baris. Dalam panduan ini, kita akan membahas cara menggunakan operator ternary di Python beserta contoh praktisnya.
1. Sintaks Dasar Operator Ternary
Operator ternary di Python mengikuti sintaks berikut:
<ekspresi_jika_true> if <kondisi> else <ekspresi_jika_false>
Artinya: kondisi akan dievaluasi terlebih dahulu, jika bernilai True
ekspresi pertama dikembalikan, jika False
ekspresi kedua dikembalikan.
Contoh:
x = 10
y = 20
result = "x lebih besar" if x > y else "y lebih besar"
print(result)
Hasilnya:
y lebih besar
Karena x
tidak lebih besar dari y
, ekspresi setelah else
yang dijalankan.
2. Menggunakan Operator Ternary dengan Fungsi
Operator ternary juga bisa dipakai di dalam fungsi untuk membuat kode lebih ringkas dan mudah dibaca.
Contoh:
def is_even(number):
return "Genap" if number % 2 == 0 else "Ganjil"
print(is_even(4)) # Output: Genap
print(is_even(7)) # Output: Ganjil
Fungsi is_even
mengembalikan “Genap” jika angka habis dibagi 2, dan “Ganjil” sebaliknya.
3. Menyusun Ternary Bersarang
Python memungkinkan penggunaan ternary bersarang, tapi sebaiknya hindari terlalu dalam karena bisa menurunkan keterbacaan kode.
Contoh:
a, b, c = 5, 10, 15
result = "a terbesar" if a > b and a > c else "b terbesar" if b > c else "c terbesar"
print(result)
Hasilnya:
c terbesar
Di sini, ternary bersarang menentukan variabel mana yang paling besar.
4. Menghindari Kesalahan Umum
Salah satu kesalahan umum adalah salah memahami urutan evaluasi. Python mengevaluasi kondisi terlebih dahulu, baru memilih ekspresi yang sesuai.
Contoh:
x = None
result = "x adalah None" if x is None else len(x) # Benar
print(result)
# result = len(x) if x is not None else "x adalah None" # Bisa error karena len(None)
Versi pertama aman, sedangkan versi kedua dapat memicu TypeError
jika x
bernilai None
.
5. Contoh Penggunaan Praktis
Operator ternary sering digunakan untuk memberikan nilai default, menangani kondisi sederhana, atau membuat logika inline lebih ringkas.
Memberikan Nilai Default:
user_input = input("Masukkan sesuatu: ")
output = user_input if user_input else "Tidak ada input"
print(output)
Jika pengguna tidak memasukkan apapun, yang dicetak adalah “Tidak ada input”.
Menangani Kondisi Sederhana:
age = 18
access = "Diizinkan" if age >= 18 else "Ditolak"
print(access)
Cek apakah age
18 atau lebih untuk menentukan akses.
Kesimpulan
Operator ternary di Python adalah alat yang kuat untuk menulis kode yang ringkas dan mudah dibaca. Operator ini memungkinkan pengambilan keputusan dalam satu baris, mengurangi kebutuhan menulis banyak statement if-else
. Cocok untuk kondisi sederhana, tapi hati-hati saat menyusun ternary bersarang agar kode tetap jelas. Menguasai operator ini akan membuat kode Python Anda lebih efisien dan elegan.