Học lập trình python hoặc với bất kỳ với ngôn ngữ lập trình nào thì bạn cũng thường thấy họ nói về Biến (Variable) Hàm (function), Lớp (Class) hoặc module…vậy hàm trong lập trình python là gì? Bài học hôm nay chúng ta sẽ đi tìm hiểu về hàm (function) trong lập trình python là gì? Cách tạo hàm và cách gọi hàm trong python.
Hàm function trong python là một tập hợp nhiều đoạn mã code dùng để thực hiện một chức năng hay một nhiệm vụ nào đó. Hàm được tạo ra để có thể gọi và tái sử dụng nhiều lần. Bởi vì Hàm có thể tái sử dụng nhiều lần nên nó giúp cho code của bạn ngắn gọn hơn và tiết kiệm được thời gian hơn khi lập trình. Bạn có thể truyền dữ liệu hoặc tham số vào một hàm.
Sau đây là ví dụ về hàm trong python:
Trong python sử dụng từ khóa : def để tạo hàm.
Cú pháp tạo hàm trong python như sau:
def name_Function():
// Viết code và dòng lệnh ở đây
Để gọi một hàm trong python, chúng ta gọi tên hàm như sau:
# Tạo hàm trong python
def name_function():
print("This is demo Function in python")
# Cách gọi hàm trong python
name_function()
This is demo Function in python
Các thông tin, dữ liệu có thể truyền vào một hàm dưới dạng tham số hoặc đối số.
Demo1 goi ham co tham so trong python. Gia tri cua ham la: 6
Bởi mặc định, một hàm phải được gọi chính xác với số đối số. Có nghĩa là nếu hàm của bạn đã tạo có 2 đối số (arguments) thì khi gọi hàm bạn phải gọi hàm đó với 2 đối số, không được nhiều hơn hoặc ít hơn.
Ví dụ Chúng ta định nghĩa một hàm có 2 đối số (arguments) sau:
Demo1 goi ham co tham so trong python. Gia tri cua ham la: 3
Nếu bạn gọi hàm truyền vào 2 đối số thì ok, nhưng nếu bạn truyền vào nhiều hơn hoặc ít hơn 2 đối số thì sẽ có lỗi.
phep_cong() missing 1 required positional argument: 'b'
Ví dụ dưới đây là cách sử dụng return của hàm trong python.
Demo2 goi ham trong python. Gia tri cua ham la: 10
def F_list_fruist(l_fruits):
print(l_fruits)
fruits = ["Apple","Mango","Guava","Lemon","Cherry"]
F_list_fruist(fruits)
['Apple', 'Mango', 'Guava', 'Lemon', 'Cherry']
Nếu bạn không biết có bao nhiêu đối số được truyền vào hàm của mình, thì bạn hãy thêm dấu * vào trước tên tham số trong định nghĩa hàm.
Với cách này hàm sẽ trả về 1 tuple của các đối số và sau đó bạn có thể truy cập đến các phần tử.
# Ví dụ:Nếu không biết hàm có bao nhiêu đối số truyền thì hãy thêm dấu * trước tên tham số.
def my_function(*foods):
print("The good food is : ", foods[3])
my_function("Apple","Mango","Lemon","Cherry")
The good food is : Cherry
Nếu bạn không biết có bao nhiêu keyword của đối số (arguments) truyền vào hàm thì bạn hãy thêm dấu ** vào trước tên tham số trong định nghĩa hàm. Với cách này hàm sẽ nhận một dictionary của các đối số và có thể truy cập đến các phần tử.
# Hàm truyền đối số là các keyword bất kỳ
def my_function(**cars):
print("The car is : ", cars["car_color"])
my_function(car_name = "Honda", car_color="Red")
The car is : Red