Python

Python Lambda

Python Lambda

Pada artikel ini, kita akan mencoba mempelajari tentang Python Lambda.

Definisi

Lambda adalah fungsi yang didefinisikan tanpa nama. Ini dapat mengambil banyak argumen, tetapi hanya satu ekspresi yang diizinkan yang dievaluasi dan dikembalikan. Di mana objek fungsi diperlukan, kita dapat menggunakan fungsi lambda.

Sintaksis:
argumen lambda: ekspresi

Contoh 1: Fungsi di bawah ini digunakan untuk menghitung pangkat tiga suatu bilangan:.

kubus def (a):
kembali a*a*a
cetak(kubus(3))

Fungsi di atas dapat ditulis menggunakan lambda, seperti yang ditunjukkan di bawah ini:

p = lambda x : x*x*x
cetak(p(3))

Contoh 2: Fungsi di bawah ini digunakan untuk menghitung jumlah dua bilangan:.

def jumlah_2(x,y):
kembali x + y
cetak(jumlah_2(10,20))

Fungsi di atas dapat ditulis menggunakan lambda, seperti yang ditunjukkan di bawah ini:

p = lambda x,y : x + y
cetak(p(10,20))

Contoh 3: Contoh di bawah untuk lambda membutuhkan banyak argumen.

p = lambda x, y, z : x + y + z
cetak(p(10, 5, 3))

Contoh 4: Fungsi ini mengalikan angka dengan 2 dan dapat ditulis menggunakan fungsi Lambda seperti di bawah ini:

fungsi def(n):
kembali lambda x : x * n
kalikan_dengan_2 = fungsi(2)
cetak(kalikan_dengan_2(11))
cetak(kalikan_dengan_2(15))

Contoh 5: Fungsi mengambil fungsi sebagai argumen dan mengembalikan hasilnya.

function_argument = lambda p, f: p + f(p)
print(function_argument(5, lambda p: p * p))
print(function_argument(10, lambda x: x - 3))
print(function_argument(10, lambda x: x + 5))
print(function_argument(10, lambda x: x/5))

Contoh 6: Pada contoh di bawah, lambda digunakan untuk mengurutkan nilai.

# (nama, nama belakang, umur)
data = [("Sachin", "Tendulkar", "42"), ("Rahul", "Dravid", "44"), ("Virendra", "Sehwag", "40")]
data.sort(key=lambda x:x[0])#sort berdasarkan nama
cetak (data)
data = [("Sachin", "Tendulkar", "42"), ("Rahul", "Dravid", "44"), ("Virendra", "Sehwag", "40")]
data.sort(key=lambda x:x[1])#sort berdasarkan nama belakang based
cetak (data)
data = [("Sachin", "Tendulkar", "42"), ("Rahul", "Dravid", "44"), ("Virendra", "Sehwag", "40")]
data.urutkan(kunci=lambda x:x[2])#urutkan berdasarkan usia
cetak (data)

Sekarang, masuk ke penerjemah python3.

Fungsi lambda digunakan dalam banyak metode bawaan. Berikut ini adalah beberapa contohnya:

1. Peta

Fungsi ini memetakan setiap elemen secara berurutan menggunakan fungsi lambda.

Sintaksis:
peta (fungsi, seq)

Ex:
bilangan = [1,2,3,4,5,6]
Di sini, kita akan mengalikan setiap elemen dalam daftar dengan 2.
mul_2 = peta(lambda x: x*2, angka)
print(list(mul_2)) # Ini mengembalikan objek peta dan mengetiknya sebagai daftar.

Pada fungsi di atas, setiap elemen daftar dilewatkan ke fungsi lambda dan fungsi lambda akan mengalikannya dengan 2.

bilangan = [1,2,3,4,5,6]
mul_2 = peta(lambda x: x*2, angka)
cetak(daftar(mul_2))

2. Saring

Fungsi ini menyaring semua elemen daftar yang fungsi lambdanya mengembalikan True.

Sintaksis:
filter (fungsi, seq)

Ex:
bilangan = [0,1,2,3,4,5,6,7,8,9,10]
ganjil_nums = filter(lambda x: x % 2, nums)
print(list(odd_nums)) # Ini mengembalikan objek peta, dan mengetiknya sebagai daftar.

bilangan = [0,1,2,3,4,5,6,7,8,9,10]
ganjil_nums = filter(lambda x: x % 2, nums)
cetak(daftar(angka_ganjil))

3. Mengurangi

Fungsi ini mengembalikan nilai tunggal dengan menerapkan fungsi func() ke seq.

Sintaksis:
kurangi (fungsi, seq)

Ex:
bilangan = [0,1,2,3,4,5,6,7,8,9,10]
nilai = kurangi(lambda x,y: x+y, angka)
cetak (nilai)

Dalam daftar di atas, itu akan mengambil 2 elemen pertama dan melakukan penambahan. Hasil penambahan akan ditambahkan ke elemen ketiga dan seterusnya. Akhirnya, itu akan mengembalikan satu nilai.

Catatan: Metode ini tidak tersedia di versi python3+.

bilangan = [0,1,2,3,4,5,6,7,8,9,10]
nilai = kurangi(lambda x,y: x+y, angka)
cetak (nilai)

Kesimpulan

Dari artikel ini, kita telah mempelajari banyak aspek dari fungsi lambda. Bergantung pada kebutuhan program, kita dapat menggunakannya dan membuat pengkodean python yang lebih baik. Ini paling sering digunakan untuk meneruskan argumen ke fungsi lain (misalnya, kita telah melihat fungsi di atas memetakan, memfilter, dan mengurangi).

Cara Menampilkan Overlay OSD di Aplikasi dan Game Linux Layar Penuh
Memainkan game layar penuh atau menggunakan aplikasi dalam mode layar penuh bebas gangguan dapat memutus Anda dari informasi sistem yang relevan yang ...
5 Kartu Tangkap Game Teratas
Kita semua telah melihat dan menyukai gameplay streaming di YouTube. PewDiePie, Jakesepticye, dan Markiplier hanyalah beberapa pemain top yang telah m...
Cara Mengembangkan Game di Linux
Satu dekade yang lalu, tidak banyak pengguna Linux yang memprediksi bahwa sistem operasi favorit mereka suatu hari nanti akan menjadi platform game po...