Hàm trong Python – Cú pháp và một số hàm phổ biến
Hàm – Function là một khái niệm cơ bản quan trọng nhất trong mọi ngôn ngữ lập trình mà bạn cần nắm vững để có thể sử dụng. Bài viết hôm nay chúng ta cùng nhau tìm hiểu về hàm trong Python, cú pháp khai báo hàm cũng như lời gọi hàm sử dụng trong ngôn ngữ này nhé.
Hàm trong Python là gì?
Trong lập trình Python, hàm được kí hiệu là function
là một khối code hay nhóm lệnh có tổ chức và có thể tái sử dụng được dùng để triển khai một hành động liên quan, thực hiện một tác vụ cụ thể. Nó giúp chia một chương trình Python ra thành những khối/ phần/ mô đun nhỏ hơn, có tổ chức để dễ dàng quản lý hơn và tối ưu hóa việc tái sử dụng.
Trong Python có 2 loại hàm cơ bản chính gồm:
- Hàm Python tích hợp sẵn – Built-in Functions: hàm có sẵn trong thư viện cơ bản được Python cung cấp
- Hàm Python tự định nghĩa: hàm mà người dùng tự khai báo
Ở phiên bản Python 3.12 mới nhất hiện nay, có khoảng 70 functions được tích hợp sẵn và bạn có thể tham khảo ở link này để sử dụng
Cú pháp khai báo function trong Python
Cấu trúc hàm trong Python:
Trong đó:
- def: từ khóa bắt đầu định nghĩa một hàm trong Python
- funtion_name: tên function khai báo – định danh duy nhất và tuân thủ quy tắc đặt tên hàm Python
- arguments: danh sách các tham số/ đối số đặt trong ngoặc đơn, được khai báo tách nhau bởi dấu phẩy
- dấu “:”: đánh dấu kết thúc khai báo tiêu đề của hàm
- statement list: danh sách các câu lệnh, khai báo nội dung hàm
- return: từ khóa để giúp hàm trả về một giá trị nhất định
Với Python, một function có thể trả về dữ liệu (chứa từ khóa return) hoặc không. Trường hợp không có lệnh return thì hàm sẽ trả về None.
Ngoài ra để phục vụ cho việc tạo tài liệu (documents) của hàm, Python sử dụng khai báo bên dưới tiêu đề hàm và nằm trong 3 ký tự [“””]. Phần này được gọi là Docstring (documentation string) giúp giải thích ngắn gọn về chức năng của hàm.
Một ví dụ đầy đủ khi khai báo hàm Python bạn có thể tham khảo dưới đây:
Cú pháp gọi hàm trong Python
Chúng ta định nghĩa một hàm như dưới đây:
def sayHello(name): """This function to say hello, name is a argument""" print("Hello " + name + ". Have nice day!")
Để gọi sử dụng hàm trên trong Python, chúng ta đơn giản chỉ cần nhập tên hàm và truyền tham số tương ứng, ví dụ:
sayHello("TopDev") # Hello TopDev. Have nice day!
Lưu ý rằng trong Python, code định nghĩa hàm luôn phải nằm trước lời gọi hàm, nếu không thì chương trình sẽ trả về lỗi hàm chưa được định nghĩa (NameError … not defined).
Phạm vi biến trong hàm Python
Trong Python, phạm vi của biến chính là đoạn chương trình mà ở đó biến được thừa nhận, có thể sử dụng. Với một hàm, biến và các tham số có phạm vi chỉ trong phần khai báo của hàm đó; nghĩa là chúng ta không thể sử dụng các biến đó bên ngoài hàm.
Thời gian tồn tại của biến trong hàm cũng được đánh dấu tương ứng với lời gọi hàm, chúng được tạo ra khi hàm có lời gọi đến, xuất hiện ở bộ nhớ trong quá trình thực thi hàm và sẽ bị hủy khi chương trình thoát khỏi hàm.
Tuyển dụng Python mọi cấp độ tại đây!
Phân biệt Method và Function trong Python
Trong Python, có 2 khái niệm mà nếu mới tiếp xúc với ngôn ngữ này bạn có thể dễ bị nhầm lẫn, đó là method – phương thức và function – hàm. Cả 2 đều khá giống nhau trong cách khai báo, định nghĩa cũng như lời gọi, cách sử dụng; bạn có thể xem ở ví dụ dưới đây.
Điểm khác nhau cơ bản giữa method và function đấy là việc method thuộc về một lớp hay đối tượng và để gọi hay truy cập vào method cần thông qua lớp, đối tượng đó. Như ở ví dụ trên, phương thức to_pounds được định nghĩa bên trong class Weight và để gọi được thì bắt buộc phải thông qua đối tượng w.
>> Giải đáp chi tiết hơn trong bài viết: Phân biệt Method và Function trong Python
Một số hàm phổ biến trong Python
Những hàm hữu ích tích hợp sẵn và hay được sử dụng trong Python mà bạn nên biết:
- reduce(): duyệt qua từng phần tử trong một danh sách và trả về một giá trị đơn lẻ
- split(): ngắt một chuỗi dựa theo tiêu chí
- enumerate(): trả về độ dài của một vòng lặp
- eval(): triển khai các biểu thức toán học
- map(): duyệt qua từng phần tử trong danh sách
- min(), max(): trả về mục được xếp hạng thấp nhất/ cao nhất trong một lần lặp
- getattr(): trả về thuộc tính của một đối tượng
Kết bài
Qua bài viết này chắc hẳn các bạn đã nắm được kiến thức cơ bản về hàm, cách định nghĩa cũng như sử dụng hàm trong ngôn ngữ lập trình Python. Hy vọng bài viết hữu ích dành cho bạn và hẹn gặp lại trong các bài viết tiếp theo của mình.
Tác giả: Phạm Minh Khoa
Xem thêm:
- G Giải Quyết Bài Toán Kinh Doanh Bằng Big Data và AI
- B BenQ RD Series – Dòng Màn Hình Lập Trình 4k+ Đầu Tiên Trên Thế Giới
- F Framework nào tốt nhất cho dự án của bạn? – Checklist chi tiết
- K Kinh nghiệm xử lý responsive table hiệu quả
- S Stackoverflow là gì? Bí kíp tận dụng Stack Overflow hiệu quả
- 7 7 kinh nghiệm hữu ích khi làm việc với GIT trong dự án
- B Bài tập Python từ cơ bản đến nâng cao (có lời giải)
- B Bảo mật API là gì? Một số nguyên tắc và kỹ thuật cần biết
- H Hướng dẫn cài đặt và tự học lập trình Python cơ bản từ A-Z
- C Chinh Phục Phân Tích Dữ Liệu Với Pandas Trong Python: Hướng Dẫn Từng Bước