Chúng ta sẽ kết thúc Phần 1: Cơ bản về Python bằng một bài học nền tảng rất quan trọng: Hàm (Function). Sau đó, bạn sẽ vận dụng toàn bộ kiến thức đã học để xây dựng Mini Project: Máy tính cộng trừ. Hãy tập trung cao độ, vì từ đây bạn sẽ viết mã có tổ chức, tái sử dụng, và chuyên nghiệp hơn.
Mục tiêu bài học
- Hiểu khái niệm và vai trò của hàm trong lập trình
- Biết cách định nghĩa, gọi và truyền tham số cho hàm
- Nắm cách trả về giá trị từ hàm (
return
) - Hiểu sự khác nhau giữa biến cục bộ và toàn cục
- Bắt đầu viết chương trình có cấu trúc rõ ràng hơn
Hàm là gì?
Hàm là một khối mã có tên dùng để thực hiện một công việc cụ thể. Bạn có thể gọi lại hàm bất cứ lúc nào, bao nhiêu lần cũng được, không cần lặp lại code.
Ví dụ: thay vì viết 5 lần print("Hello")
, bạn có thể viết:
def chao():
print("Hello")
# Gọi hàm
chao()
chao()
Lợi ích của hàm:
- Tái sử dụng code
- Giúp chương trình rõ ràng, dễ hiểu, dễ sửa lỗi
- Dễ bảo trì, mở rộng về sau
Cách định nghĩa hàm
Cú pháp:
def ten_ham(tham_so):
khối_lệnh
def
là từ khóa để định nghĩa hàmten_ham
: đặt tên mô tả rõ ràngtham_so
: dữ liệu đầu vào (có thể có hoặc không)return
: để trả về giá trị (nếu cần)
Ví dụ đơn giản
def xin_chao():
print("Chào bạn đến với Python!")
xin_chao()
Hàm có tham số
def chao_ten(ten):
print("Xin chào", ten)
chao_ten("Lan")
chao_ten("Hoàng")
Hàm trả về giá trị với return
def tinh_tong(a, b):
return a + b
tong = tinh_tong(5, 3)
print("Tổng là:", tong)
Tham số mặc định
def chao(ten="bạn"):
print("Chào", ten)
chao() # Chào bạn
chao("An") # Chào An
Biến cục bộ và toàn cục
x = 10 # Biến toàn cục
def hien_thi():
x = 5 # Biến cục bộ (chỉ dùng trong hàm)
print("Trong hàm:", x)
hien_thi()
print("Ngoài hàm:", x)
Kết quả:
Trong hàm: 5
Ngoài hàm: 10
Gọi hàm trong hàm
def binh_phuong(x):
return x * x
def tinh_hieu_qua(a, b):
return binh_phuong(a) + binh_phuong(b)
print(tinh_hieu_qua(3, 4)) # 25
Bài tập luyện tập
Bài tập 1: Viết hàm tinh_tich(a, b)
trả về tích của 2 số
Bài tập 2: Viết hàm kiem_tra_chan_le(n)
in ra “Chẵn” hoặc “Lẻ”
Bài tập 3: Viết hàm tinh_trung_binh(ds)
nhận vào danh sách số và trả về điểm trung bình
Bài tập 4: Viết hàm dem_ky_tu(s)
đếm số ký tự trong chuỗi (trừ khoảng trắng)
Kết luận
Hàm giúp bạn chia nhỏ chương trình thành các phần rõ ràng, dễ hiểu. Nó giống như xây từng viên gạch để tạo nên một ngôi nhà – từ nay bạn không chỉ “viết code” mà đã bắt đầu “thiết kế chương trình”.
Thảo luận