Hàm trong Python – Cú pháp và một số hàm phổ biến

33844

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:

Ở 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

hàm trong Python

Cú pháp khai báo function trong Python

Cấu trúc hàm trong Python:

Cú pháp khai báo 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 khai báo hàm trong Python

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).

  Tất tần tật về các loại toán tử trong Python

  Quy tắc đặt tên biến trong Python đúng chuẩn 2024

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.

Phạm vi biến trong hàm Python

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.

Phân biệt Method và Function trong Python

Đ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: