Phân biệt hai kiểu hàm trong python để hiểu bản chất

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.

1. Trong Python, có hai loại hàm chính

    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.

2. Giải thích từng loại hàm trong Pythong

Hàm có sẵn trong Python

Đặ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.

Hàm tự viết (User-defined functions)

Đặ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.

 

3. Phân biệt giữa hàm tự viết và hàm có sẵn trong python

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.