Khi viết các chương trình lớn, việc lặp đi lặp lại những đoạn mã trùng lặp không chỉ làm mã nguồn trở nên cồng kềnh mà còn gây khó khăn cho quá trình bảo trì. Hàm (Function) trong Python chính là giải pháp tối ưu giúp chia nhỏ chương trình thành các khối lệnh có tổ chức và có thể tái sử dụng dễ dàng.
1. Hàm trong Python là gì và cách định nghĩa
Hàm là một tập hợp các khối lệnh thực hiện một tác vụ cụ thể. Trong Python, chúng ta định nghĩa một hàm bằng từ khóa def, theo sau là tên hàm và cặp dấu ngoặc đơn ().
Cú pháp cơ bản:
def tên_hàm(danh_sách_tham_số):
"""Docstring: Mô tả chức năng của hàm (không bắt buộc)"""
# Các câu lệnh xử lý
return giá_trịVí dụ khai báo và gọi hàm:
def xin_chao():
print("Chao mung ban den voi Python!")
# Gọi hàm
xin_chao()2. Truyền tham số vào hàm
Hàm có thể nhận các tham số (arguments) để xử lý dữ liệu động linh hoạt hơn.
def tinh_tich(a, b):
tich = a * b
print(f"Tich cua {a} va {b} la: {tich}")
tinh_tich(4, 5)3. Giá trị trả về với từ khóa return
Mặc định, nếu hàm không có từ khóa return, kết quả trả về của hàm sẽ là None. Để lấy được giá trị sau khi tính toán ra bên ngoài, chúng ta sử dụng câu lệnh return.
def tinh_tong(a, b):
return a + b
ket_qua = tinh_tong(10, 20)
print("Tong la:", ket_qua)4. Quản lý phạm vi biến (Scope)
Phạm vi của biến quyết định nơi biến đó có thể được truy cập hay chỉnh sửa trong chương trình. Khi làm việc với hàm, bạn cần phân biệt hai loại phạm vi biến cơ bản:
Biến cục bộ (Local Variable)
Biến cục bộ được khai báo bên trong hàm. Biến này chỉ tồn tại trong suốt quá trình hàm thực thi và sẽ bị xóa khỏi bộ nhớ khi hàm kết thúc. Bạn không thể truy cập biến cục bộ từ bên ngoài hàm.
def thuc_hien():
x = 10 # Biến cục bộ
print("Trong ham x =", x)
thuc_hien()
# print(x) # Sẽ gây ra lỗi NameError vì x không tồn tại ở phạm vi ngoài hàmBiến toàn cục (Global Variable)
Biến toàn cục được khai báo bên ngoài tất cả các hàm và có thể được đọc ở bất kỳ đâu trong chương trình.
y = 50 # Biến toàn cục
def in_gia_tri():
print("Gia tri cua y la:", y)
in_gia_tri()Kết luận
Nắm vững cách xây dựng hàm và quản lý phạm vi biến giúp chương trình Python của bạn trở nên mạch lạc, dễ đọc và tối ưu hơn. Việc chia nhỏ bài toán thành các hàm độc lập cũng tạo tiền đề quan trọng cho tư duy lập trình mô-đun và hướng đối tượng ở các bước phát triển tiếp theo.
Nguồn tham khảo
- Bài 4: Hàm và Tham Số trong Python - Lập Trình Python
- Hàm trong Python với những ví dụ dễ hiểu | Viết bởi Cẩm Vân Lanit
- Hàm trong Python là gì? Các loại hàm và cú pháp function Python
- định nghĩa hàm trong python - RPubs
- Python 12 - Defining Functions - YouTube
Nhận xét
Đăng nhận xét