Bài 30. Hàm (function)
Bài học giới thiệu hàm (function) trong Python - công cụ giúp đóng gói một đoạn việc thành một khối lệnh có tên, để dùng lại nhiều lần thay vì phải viết đi viết lại cùng một đoạn mã trong chương trình.
- Cánh DiềuTin học 10 - Chủ đề F · Bài 10. Chương trình con và thư viện các chương trình con có sẵntr. 86
- Kết nối tri thứcTin học 10 - Bài 26. Hàm trong Pythontr. 127–130
Bắt đầu bằng một hình dung
Hãy hình dung một chiếc máy xay sinh tố đặt trong bếp. Muốn có một li nước ép, người dùng không cần tự tay nghiền, lọc và khuấy trái cây - chỉ cần bỏ nguyên liệu vào cối xay, đậy nắp, bấm nút; máy sẽ tự thực hiện các bước xử lí bên trong rồi trả ra thành phẩm là li nước ép. Muốn xay táo thì bỏ táo vào, muốn xay xoài thì bỏ xoài vào - vẫn là chiếc máy đó, dùng lại bao nhiêu lần cũng được, không cần chế tạo một chiếc máy mới cho mỗi loại trái cây.
Trong lập trình cũng có một công cụ hoạt động theo đúng tinh thần ấy: nhận một số dữ liệu đầu vào, xử lí theo một quy trình đã định sẵn, rồi trả ra kết quả - và có thể dùng lại nhiều lần mà không phải viết lại quy trình xử lí từ đầu mỗi khi cần dùng. Công cụ đó gọi là hàm.
Nội dung bài học
- Vì sao cần dùng hàm?
- Định nghĩa hàm và gọi hàm
Tóm tắt lý thuyết cần nhớ
- Hàm (function) là một đoạn chương trình được đặt tên, đóng gói một công việc cụ thể để có thể gọi lại nhiều lần mà không phải viết lại từ đầu.
- Cú pháp định nghĩa hàm:
def ten_ham(tham_so):, thân hàm thụt lề bên dưới; muốn hàm thực hiện thì phải gọi hàm bằngten_ham(gia_tri). returndùng để trả kết quả từ bên trong hàm ra cho nơi gọi; một hàm có thể có hoặc không có tham số, có hoặc không córeturn, tuỳ vào công việc cần làm.- Dùng hàm giúp chương trình gọn, dễ đọc, dễ sửa và tái sử dụng được, thay vì phải lặp lại cùng một đoạn lệnh ở nhiều chỗ.
Thuật ngữ tiếng Anh trong bài
| Tiếng Anh | Đọc là | Nghĩa |
|---|---|---|
| function | PHẮNG-sần | hàm Một 'cỗ máy nhỏ' lắp sẵn để làm một việc cụ thể. |
| def | đép | khai báo hàm (def) Từ khoá để bắt đầu tạo một hàm mới, như treo tấm bảng 'bắt đầu công thức'. |
| return | ri-TƠN | lệnh trả về (return) Lệnh đưa kết quả từ trong hàm ra ngoài để dùng tiếp - như đưa món ăn nấu xong ra khỏi bếp để mang lên bàn. |
Câu hỏi trắc nghiệm có đáp án
Mấy câu mẫu để bạn tự kiểm tra ngay. Trong ứng dụng, bài này có đủ 24 câu, chấm điểm tự động và giải thích từng câu sai.
- Đóng gói một đoạn việc có tên, để có thể dùng lại nhiều lần mà không phải viết lại
- Lưu trữ một dữ liệu cố định, không bao giờ thay đổi trong suốt chương trình
- Chỉ dùng để hiển thị hình ảnh lên màn hình máy tính
- Thay thế hoàn toàn cho việc dùng biến trong chương trình
- return
- def
- call
def (viết tắt của define) là từ khoá dùng để bắt đầu định nghĩa một hàm mới, theo cú pháp def ten_ham(tham_so):. return dùng để trả kết quả ra khỏi hàm, print dùng để in dữ liệu ra màn hình, còn call không phải là từ khoá của Python.def tinh_dien_tich(dai, rong):, hai tên dai và rong được gọi là gì, và giữ vai trò nào?- Là kết quả mà hàm trả về sau khi tính toán xong tích của hai cạnh
- Là tham số của hàm - dữ liệu đầu vào mà hàm nhận được mỗi khi được gọi
- Là tên gọi khác của chính hàm tinh_dien_tich, dùng để gọi hàm cho ngắn
- Là dòng lệnh dùng để gọi hàm ra thực hiện mỗi khi cần tính diện tích
dai và rong là các tham số của hàm - dữ liệu đầu vào mà hàm nhận được mỗi khi được gọi, chẳng hạn tinh_dien_tich(5, 3), rồi dùng để tính toán bên trong thân hàm. Kết quả trả về là giá trị đi sau return, khác với bản thân các tham số.- a)Muốn hàm thực sự thực hiện công việc bên trong, phải gọi hàm bằng tên hàm kèm giá trị cụ thể trong ngoặc.Đúng
- b)Một hàm trong Python bắt buộc phải có ít nhất một tham số thì mới được coi là hợp lệ.Sai
- c)Lệnh return dùng để trả một giá trị từ bên trong hàm ra cho nơi đã gọi hàm.Đúng
- d)Các dòng lệnh trong thân hàm không cần thụt lề, chỉ cần viết liền sau dấu hai chấm trên cùng một dòng là được.Sai
- (a) Đúng - hàm chỉ thực sự chạy khi được gọi bằng tên hàm kèm giá trị cụ thể trong ngoặc, ví dụ tinh_dien_tich(5, 3); nếu chỉ định nghĩa mà không có lượt gọi nào, các lệnh bên trong sẽ không được thực hiện.
- (b) Sai - một hàm hoàn toàn có thể không có tham số nào, như hàm in_tieu_de() trong bài, vẫn là một hàm hợp lệ.
- (c) Đúng - đây chính là công dụng của return: đưa giá trị từ bên trong hàm ra ngoài cho nơi đã gọi.
- (d) Sai - thân hàm phải được viết trên các dòng riêng, thụt lề thống nhất bên dưới dấu hai chấm; Python dựa vào thụt lề để xác định dòng nào thuộc về hàm.
Thử ngay: minh hoạ từng bước
Bấm từng bước để tự xem cơ chế hoạt động, hoặc bấm “Tự chạy” cho nó tiến mỗi giây một lần. Đổi được dữ liệu đầu vào - không cần đăng nhập.
Học trọn bài này trong ứng dụng
Bài giảng đầy đủ, 24 câu luyện tập chấm tự động, thi thử đúng cấu trúc đề tốt nghiệp (24 trắc nghiệm + 4 Đúng/Sai), bài thực hành máy tự chấm và gia sư AI giải thích chỗ sai.
Phần học miễn phí, không cần tạo tài khoản.
Bài liên quan - Lập trình, Thuật toán & CTDL (KHMT)
Cùng mạch kiến thức với bài này, học nối tiếp cho chắc phần lí thuyết.