Hàm tự viết (User-defined functions): Đây là các hàm mà bạn, người lập trình, tự tạo ra để thực hiện một tác vụ cụ thể nào đó.
Hàm có sẵn (Built-in functions): Đây là các hàm đã được định nghĩa sẵn trong Python, bạn có thể sử dụng chúng ngay mà không cần phải khai báo hay định nghĩa lại.
Đặc điểm
Đã được định nghĩa sẵn trong Python: Bạn không cần phải viết mã nguồn cho những hàm này. Python cung cấp rất nhiều hàm có sẵn để hỗ trợ bạn trong các tác vụ thường gặp.
Có thể sử dụng ngay lập tức: Những hàm này có thể gọi và sử dụng trực tiếp mà không cần phải định nghĩa lại.
Phong phú: Python cung cấp rất nhiều hàm có sẵn cho nhiều loại thao tác, từ toán học, chuỗi, danh sách đến xử lý I/O.
Một số hàm có sẵn phổ biến
print() — in ra giá trị
len() — trả về độ dài của một chuỗi, danh sách, v.v.
sum() — tính tổng các phần tử trong một iterable.
max() — trả về giá trị lớn nhất trong một iterable.
sorted() — sắp xếp một iterable.
Ví dụ sử dụng hàm có sẵn
# Hàm có sẵn: len()
s = "Hello, World!"
print(len(s)) # Kết quả: 13
Giải thích:
len() là một hàm có sẵn trong Python, dùng để tính độ dài của chuỗi s.
Đặc điểm hàm tự viết
Được người lập trình tạo ra: Bạn tự viết mã nguồn để định nghĩa các hàm này.
Cấu trúc: Bạn có thể chỉ định tên hàm, các tham số (arguments), và phần thân hàm (body) để thực hiện các tác vụ cụ thể.
Linh hoạt: Bạn có thể xác định các tham số mặc định, giá trị trả về, và các kiểu xử lý phức tạp trong hàm này.
Cách định nghĩa hàm
Sử dụng từ khóa def để khai báo một hàm tự viết. Sau đó là tên hàm và các tham số.
Cú pháp tạo hàm tự định nghĩa trong python
def function_name(parameters):
# Phần thân hàm
return value
Ví dụ:
# Hàm tính tổng hai số
def add_numbers(a, b):
return a + b
result = add_numbers(5, 3) # Gọi hàm và in kết quả
print(result) # Kết quả: 8
Giải thích:
add_numbers là một hàm tự viết.
Nó nhận hai tham số a và b, sau đó trả về giá trị tổng của chúng.
Tiêu chí | Hàm tự viết | Hàm có sẵn |
---|---|---|
Cách sử dụng | Cần tự định nghĩa trước khi sử dụng. | Sử dụng trực tiếp mà không cần định nghĩa lại. |
Định nghĩa | Được định nghĩa bởi người lập trình. | Được định nghĩa sẵn trong Python. |
Linh hoạt | Có thể tùy chỉnh hoàn toàn để phục vụ mục đích riêng. | Không thể thay đổi, chỉ sử dụng với chức năng đã được định nghĩa. |
Ví dụ | def add_numbers(a, b): return a + b |
len() , print() , sum() , sorted() |
Khả năng tùy biến | Có thể tự do tạo các tham số, giá trị trả về, và cấu trúc bên trong. | Giới hạn trong các tác vụ đã được cài sẵn. |
Khi lập trình ứng dụng python, bạn cần phân biệt rõ 2 loại hàm sau đây.