Thứ Tư, 15 tháng 5, 2024

25. Hàm lambda trong Python

Hàm lambda là một hàm ẩn danh nhỏ.

Hàm lambda có thể nhận bất kỳ số lượng đối số (argument) nào nhưng chỉ có thể có một biểu thức.


Cú pháp

lambda arguments : expression


Trong đó

arguments: Đối số
expression: Biểu thức

Ví dụ:

x = lambda a: a + 24
print(x(5))


Sử dụng IDE Online để chạy chương trình

 

 

Vì hàm lambda có thể có bất kỳ số lượng đối số (argument) nào nên ta thêm một đối số nữa vào chương trình

 

x = lambda a,b: a*b + 24
print(x(5,2))


Chạy chương trình


 

Sức mạnh của lambda được thể hiện rõ hơn khi bạn sử dụng chúng như một hàm ẩn danh bên trong một hàm khác.

Giả sử chúng ta có Công thức tính lãi suất tiết kiệm có kỳ hạn 12 tháng:

Số tiền lãi = Số tiền gửi x lãi suất (%năm)/12  x số tháng gửi.


Nếu chúng ta xây dựng một hàm để tính số tiền lãi, với giả định lãi suất là 6.8% ta sẽ viết như sau



def tietKiem(n):
  return lambda a : int((a * (n/100)/12) * 12)

tienLai = tietKiem(6.8)

print(tienLai(30000000))

 

Chạy chương trình. Hoàn hảo!



Gửi tiết kiệm 30.000.000 đồng với kỳ hạn 12 tháng tại ngân hàng có mức lãi suất 6,8%/năm, thì cách tính lãi suất ngân hàng cho số tiền tiết kiệm trong trường hợp này như sau:

* Lãi suất hàng tháng là 30.000.000 x 6,8/100/12 x 1 = 170.000 đồng

* Lãi suất sau 12 tháng gửi là 30.000.000 x 6,8/100/12 x 12 = 2.040.000 đồng

Nếu chúng ta không ép kiểu int thì kết quả tương tự nhưng là số thực: 2040000.0000005


Phần tiếp theo

 

Phần trước

 

Không có nhận xét nào:

Đăng nhận xét