Program python untuk menemukan kubus angka menggunakan fungsi lambda

Dalam tutorial ini, kita akan berbicara tentang fungsi lambda di Python. Fungsi Lambda di python adalah salah satu topik paling menarik karena akan memberi Anda kekuatan untuk menulis fungsi dalam satu baris. Kedengarannya luar biasa, bagaimana python lambda bisa melakukannya. Fungsi lambda di Python menawarkan metode yang sangat elegan untuk melakukan tugas sulit dengan mudah. Kami akan membahas secara mendalam tentang cara kerja dan cara menggunakan fungsi lambda di python. Mari kita ambil langkah kecil ke topik kita "Fungsi Lambda Dalam Python"

Apa itu Fungsi Lambda di Python?

Fungsi anonim, atau fungsi tanpa nama, adalah Fungsi Python Lambda. Seperti yang kita ketahui, fungsi Python standar didefinisikan menggunakan kata kunci def. Seperti itu, Python menggunakan kata kunci lambda untuk mendefinisikan fungsi anonim

Sintaks Fungsi Lambda di Python

Sintaks untuk Python lambda disediakan di bawah ini
Sintaksis

lambda arguments: expression
  • Hanya ada satu ekspresi yang dievaluasi dan dikembalikan dalam fungsi ini, terlepas dari jumlah parameternya
  • Fungsi Lambda dapat digunakan di mana pun objek fungsi diperlukan
  • Fakta bahwa fungsi lambda secara sintaksis terbatas pada satu ekspresi harus selalu diingat
  • Selain beberapa jenis ekspresi dalam fungsi, ia memiliki berbagai tujuan dalam disiplin pemrograman tertentu

Contoh Fungsi Python Lambda

str1 = 'prepbytes'
# lambda returns a function object
rev_upper = lambda string: string.upper()[::-1]
print(rev_upper(str1))
_

Keluaran

SETYBPERP

Penjelasan. Pada contoh di atas, kami membuat fungsi lambda yang disebut rev upper untuk membalik dan mengonversi string menjadi huruf besar

Penggunaan Fungsi Lambda di Python

Di sini, kita akan melihat berbagai contoh penggunaan fungsi lambda di python

Contoh 1 Menggunakan Fungsi Lambda di Python untuk pengecekan

format_numeric = lambda num: f"{num:e}" if isinstance(num, int) else f"{num:,.2f}"

print("Int formatting:", format_numeric(1000000))
print("float formatting:", format_numeric(999999.789541235))

Keluaran

Int formatting: 1.000000e+06
float formatting: 999,999.79
_

Contoh 2 tentang Membedakan fungsi Lambda dari fungsi yang ditentukan
def kubus(y)
kembali yyy
lambda_cube = lambda y. yyy

# using function defined
# using def keyword
print("Using function defined with def keyword, cube:", cube(3))

# using the lambda function
print("Using lambda function, cube:", lambda_cube(3))

Keluaran

Using function defined with def keyword, cube: 27
Using lambda function, cube: 27
_

Fungsi cube() dan fungsi lambda cube() bekerja secara identik dan sebagaimana dimaksud, seperti yang dapat dilihat pada contoh di atas. Mari kita periksa kasus dari atas dengan lebih detail

  • Dengan fungsi lambda
  • Tanpa fungsi lambda
  • Mendukung pernyataan baris tunggal yang mengembalikan beberapa nilai
  • Mendukung sejumlah baris di dalam blok fungsi
  • Bagus untuk melakukan operasi singkat/manipulasi data
  • Baik untuk kasus apa pun yang membutuhkan banyak baris kode
  • Menggunakan fungsi lambda terkadang dapat mengurangi keterbacaan kode
  • Kita dapat menggunakan komentar dan deskripsi fungsi agar mudah dibaca

Aplikasi Praktis Fungsi Lambda di Python

Mari kita lihat praktek penggunaan python lambda di dunia coding

Contoh 1. Daftar Pemahaman Menggunakan Fungsi Python lambda
Kami akan menggunakan fungsi lambda dan daftar pemahaman dalam contoh ini

is_even_list = [lambda arg=x: arg * 10 for x in range(1, 5)]

# iterate on each lambda function
# and invoke the function to get the calculated value
for item in is_even_list:
    print(item())

Keluaran

10
20
30
40
_

Penjelasan. Kami menghasilkan fungsi lambda baru dengan argumen default x pada setiap iterasi pemahaman daftar (di mana x adalah item saat ini dalam iterasi). Kami kemudian memanggil objek fungsi yang sama dengan argumen default menggunakan item() di dalam for loop untuk mendapatkan nilai yang diinginkan. Akibatnya, daftar objek fungsi lambda disimpan dalam daftar genapnya

Contoh 2. Fungsi Lambda di Python dengan if-else
Di sini kita menggunakan fungsi Max lambda untuk menemukan maksimum dua bilangan bulat

# Example of lambda function using if-else
Max = lambda a, b : a if(a > b) else b
print(Max(1, 2))
_

Keluaran

str1 = 'prepbytes'
# lambda returns a function object
rev_upper = lambda string: string.upper()[::-1]
print(rev_upper(str1))
_0

Contoh 3. Pernyataan Python Lambda dengan beberapa baris
Meskipun banyak pernyataan tidak diizinkan dalam fungsi lambda, kita dapat membuat dua fungsi lambda dan kemudian memanggil salah satunya sebagai parameter ke yang lain. Mari gunakan lambda untuk mencari elemen terbesar kedua

str1 = 'prepbytes'
# lambda returns a function object
rev_upper = lambda string: string.upper()[::-1]
print(rev_upper(str1))
_1

Keluaran

str1 = 'prepbytes'
# lambda returns a function object
rev_upper = lambda string: string.upper()[::-1]
print(rev_upper(str1))
_2

Dijelaskan. Setiap subdaftar dari daftar yang diberikan diurutkan dalam contoh di atas menggunakan fungsi lambda. Fungsi lambda kedua menerima daftar ini sebagai masukan dan mengembalikan entri ke-n-2 dari daftar yang diurutkan, di mana n adalah panjang dari subdaftar

Seiring dengan fungsi bawaan seperti filter(), map(), dan reduce(), fungsi lambda dapat digunakan. Ketika dikombinasikan dengan metode seperti filter(), map(), dan reduce(), dll. , fungsi lambda dapat mengeluarkan potensi penuhnya

Menggunakan Python Lambda dengan Fungsi filter

Fungsi filter() Python menerima dua argumen. fungsi dan daftar. Ini memberikan pendekatan canggih untuk menghilangkan semua komponen urutan "urutan" yang mengembalikan fungsi True. Program kecil berikut mengekstrak angka ganjil dari daftar masukan

Contoh 1. Manfaatkan fungsi lambda dan filter() untuk mendapatkan semua bilangan ganjil
Jika x tidak genap, ekspresi lambda x. (x% 2. = 0) mengembalikan Benar atau Salah. Karena filter() hanya menyimpan elemen yang menghasilkan True, semua bilangan ganjil yang menghasilkan False dihilangkan

str1 = 'prepbytes'
# lambda returns a function object
rev_upper = lambda string: string.upper()[::-1]
print(rev_upper(str1))
_3

Keluaran

str1 = 'prepbytes'
# lambda returns a function object
rev_upper = lambda string: string.upper()[::-1]
print(rev_upper(str1))
_4

Contoh 2. Gunakan fungsi lambda dan filter() untuk memfilter siapa pun yang berusia di atas 18 tahun

str1 = 'prepbytes'
# lambda returns a function object
rev_upper = lambda string: string.upper()[::-1]
print(rev_upper(str1))
_5

Keluaran

str1 = 'prepbytes'
# lambda returns a function object
rev_upper = lambda string: string.upper()[::-1]
print(rev_upper(str1))
_6

Menggunakan fungsi lambda() dengan map()

Metode map() Python menerima dua argumen. fungsi dan daftar. Daftar baru yang berisi semua item yang diubah lambda dikembalikan oleh fungsi tersebut untuk setiap item dikembalikan saat fungsi dipanggil dengan fungsi lambda dan daftar. Mari lihat satu contoh memahami bagaimana menggunakan fungsi peta dengan fungsi lambda di python

Contoh 1. Gunakan python lambda dan fungsi peta untuk mengalikan setiap elemen daftar dengan dua

str1 = 'prepbytes'
# lambda returns a function object
rev_upper = lambda string: string.upper()[::-1]
print(rev_upper(str1))
_7

Keluaran

str1 = 'prepbytes'
# lambda returns a function object
rev_upper = lambda string: string.upper()[::-1]
print(rev_upper(str1))
_8

Contoh 2. Manfaatkan lambda dan fungsi map() untuk mengubah semua elemen daftar menjadi huruf besar

str1 = 'prepbytes'
# lambda returns a function object
rev_upper = lambda string: string.upper()[::-1]
print(rev_upper(str1))
_9

Keluaran

SETYBPERP
0

Menggunakan pengurangan dan fungsi lambda

Fungsi pengurangan () Python menerima dua argumen. fungsi dan daftar. Fungsi lambda dan iterable digunakan untuk menjalankan fungsi, dan hasil pengurangan baru dikembalikan. Ini berulang kali beroperasi pada pasangan iterable. Modul functools berisi metode pengurangan ().

Contoh 1. Menggunakan lambda() dan reduce(), hitung jumlah semua elemen dalam daftar

SETYBPERP
1

Keluaran

SETYBPERP
2

Dalam hal ini, hasil dari dua elemen sebelumnya ditambahkan ke elemen berikutnya, dan seterusnya hingga elemen terakhir, seperti pada (((((5+8)+10)+20)+50)+100)

Bagaimana Anda menemukan kubus angka dengan Python?

2. Program python untuk mencari Kubus dari bilangan tertentu Menggunakan fungsi Cube() .
Ambil nomor input dari pengguna
Hitung pangkat tiga dari bilangan yang diberikan menggunakan fungsi
Cetak kubus dari nomor yang diberikan

Bagaimana Anda menggunakan fungsi lambda di Python?

Fungsi lambda Python berperilaku seperti fungsi normal terkait dengan argumen. Oleh karena itu, parameter lambda dapat diinisialisasi dengan nilai default. parameter n mengambil n terluar sebagai nilai default. Fungsi lambda Python dapat ditulis sebagai lambda x=n. print(x) dan memiliki hasil yang sama.

Bagaimana Anda membuat persegi atau kubus dengan Python?

Mengkuadratkan angka dengan Python. .
Menggunakan Operator Eksponen
Mengalikan angka dengan dirinya sendiri (n*n)
Menggunakan pow()