Python dikenal sebagai bahasa pemrograman yang memungkinkan penulisan kode yang singkat namun efektif. Banyak programmer menyukai Python karena kemampuannya untuk mengekspresikan operasi kompleks hanya dalam satu baris kode. Artikel ini mengulas lima contoh Python one-liners yang powerful dan dapat meningkatkan keterampilan coding Anda dengan cara yang lebih efisien dan elegan.
1. List Comprehension
List comprehension adalah fitur ikonik Python yang memungkinkan pembuatan list baru dengan menerapkan ekspresi pada setiap elemen iterable yang sudah ada. Contohnya, untuk mendapatkan kuadrat dari angka genap dalam daftar, biasanya menggunakan loop for dan kondisi if. Namun, dalam satu baris, list comprehension dapat mengekspresikan ini dengan lebih ringkas:
python
squares = [n * n for n in numbers if n % 2 == 0]
Keuntungan utama list comprehension adalah keterbacaan yang tetap terjaga serta performa lebih baik dibandingkan loop manual, karena optimalisasi di implementasi CPython.
2. Menghitung Frekuensi dengan Counter
Menghitung frekuensi kemunculan elemen adalah tugas yang sering muncul dalam pemrograman. Daripada mengandalkan loop dengan pengecekan kondisional dan pengelolaan manual dictionary, Python menyediakan modul collections dengan kelas Counter. Contoh satu baris untuk menghitung karakter dalam string:
python
from collections import Counter
counts = Counter(text)
Pendekatan ini tidak hanya mempercepat penulisan kode, tapi juga mengurangi risiko bug seperti inisialisasi nilai yang keliru atau kesalahan penghitungan.
3. Pertukaran Nilai Variabel
Menukar nilai dua variabel biasanya melibatkan variabel sementara atau operasi aritmatika rumit. Python menyederhanakannya dalam satu baris menggunakan tuple unpacking:
python
a, b = b, a
Python pertama membuat tuple dari nilai di sebelah kanan, lalu mengassign nilai tersebut ke variabel di kiri tanpa kehilangan data. Ini solusi yang lebih bersih dan ekspresif dibanding cara tradisional.
4. Membalik List dengan Slicing
Membalik urutan elemen dalam list dapat dilakukan dengan loop atau metode reverse(). Namun, metode reverse() mengubah list asli secara in-place, tidak membuat salinan. Cara Pythonic terbaik dan singkat adalah menggunakan slicing dengan langkah -1:
python
reversed_arr = arr[::-1]
Kode ini menciptakan list baru dengan elemen terbalik, sehingga list asli tidak berubah. Sintaks slicing [start:stop:step] sangat fleksibel dan efisien untuk manipulasi urutan data.
5. Deret Fibonacci dalam Satu Baris
Membuat deret Fibonacci biasanya membutuhkan beberapa baris kode dengan loop dan pengelolaan state. Python memungkinkan satu baris kompleks menggunakan modul itertools:
python
fibs = lambda n: [x[0] for x in import(‘itertools’).islice(import(‘itertools’).accumulate([(0,1)]*n, lambda a,b: (a[1], a[0]+a[1])), n)]
Kode ini memang rumit dan sulit dipahami. Namun, ini menunjukkan betapa ekspresifnya Python. Meski demikian, penggunaan one-liner seperti ini dalam kode produksi tidak disarankan karena mengorbankan keterbacaan dan maintainability.
Python menyediakan alat untuk menyederhanakan kode tanpa mengorbankan keterbacaan, seperti list comprehensions, Counter, tuple unpacking, dan slicing. Memahami cara memanfaatkan fitur tersebut akan membuat penulisan kode lebih efisien dan profesional. Namun begitu, kemampuan menulis satu baris tidak selalu berarti harus menggunakannya, sebab yang utama adalah membuat kode yang jelas dan mudah dipelihara. Teknik one-liner harus digunakan dengan bijak, sesuai konteks dan kebutuhan proyek.





