Định nghĩa hàm với def trong Python

Tạo bởi Hoàng Vũ, chỉnh sửa cuối lúc 2 tháng 2, 2025

Trong Python, hàm là một khối mã được tái sử dụng và có thể gọi từ nhiều nơi trong chương trình. Để định nghĩa một hàm, chúng ta sử dụng từ khóa def theo một cú pháp đặc biệt.

1. Cú pháp cơ bản của hàm trong Python

Để định nghĩa một hàm trong Python, ta sử dụng cú pháp sau:

def tên_hàm(tham_số):
    # Các câu lệnh thực thi
    return giá_trị
  • def: Từ khóa dùng để khai báo một hàm.
  • tên_hàm: Tên hàm, có thể là bất kỳ tên hợp lệ nào tuân thủ quy tắc của Python.
  • tham_số: Tham số (hoặc đối số) được truyền vào hàm. Nếu không có tham số, ta có thể bỏ qua phần này.
  • return: Câu lệnh trả về giá trị từ hàm. Nếu không cần trả về giá trị nào, có thể bỏ qua câu lệnh return.

2. Ví dụ cơ bản về hàm

Ví dụ 1: Hàm không có tham số và không có giá trị trả về

def say_hello():
    print("Hello, World!")

# Gọi hàm
say_hello()

Kết quả:

Hello, World!

Trong ví dụ này, hàm say_hello không có tham số và không trả về giá trị. Khi gọi hàm, nó sẽ in ra câu "Hello, World!".

Ví dụ 2: Hàm với tham số

def greet(name):
    print(f"Hello, {name}!")

# Gọi hàm với đối số
greet("Alice")
greet("Bob")

Kết quả:

Hello, Alice!
Hello, Bob!

Hàm greet nhận một tham số name, và khi gọi hàm với đối số "Alice" hoặc "Bob", hàm in ra lời chào tương ứng.

3. Hàm trả về giá trị (return)

Hàm trong Python có thể trả về một giá trị cho người gọi hàm. Để làm điều này, ta sử dụng câu lệnh return.

Ví dụ 3: Hàm trả về giá trị

def add(a, b):
    return a + b

# Gọi hàm và in kết quả
result = add(3, 4)
print(result)

Kết quả:

7

Hàm add nhận hai tham số ab, cộng chúng lại và trả về kết quả.

4. Hàm với tham số mặc định

Khi định nghĩa hàm, bạn có thể chỉ định một giá trị mặc định cho tham số. Nếu đối số không được truyền vào khi gọi hàm, giá trị mặc định sẽ được sử dụng.

Ví dụ 4: Hàm với tham số mặc định

def greet(name="Guest"):
    print(f"Hello, {name}!")

# Gọi hàm mà không truyền đối số
greet()

# Gọi hàm với đối số
greet("Alice")

Kết quả:

Hello, Guest!
Hello, Alice!

Trong ví dụ này, nếu không truyền đối số cho tham số name, giá trị mặc định "Guest" sẽ được sử dụng.

5. Hàm với nhiều giá trị trả về

Hàm trong Python có thể trả về nhiều giá trị bằng cách sử dụng dấu phẩy để phân tách các giá trị.

Ví dụ 5: Hàm trả về nhiều giá trị

def swap(a, b):
    return b, a

# Gọi hàm và nhận hai giá trị trả về
x, y = swap(3, 5)
print(x, y)

Kết quả:

5 3

Hàm swap trả về hai giá trị, và khi gọi hàm, chúng ta có thể nhận giá trị trả về bằng cách sử dụng hai biến xy.

6. Hàm Lambda (Hàm vô danh)

Python cũng hỗ trợ hàm lambda, là những hàm vô danh (không cần định nghĩa tên) dùng cho các tác vụ ngắn gọn.

Ví dụ 6: Hàm Lambda

# Hàm lambda cộng hai số
add = lambda x, y: x + y

# Gọi hàm lambda
print(add(3, 4))

Kết quả:

7

Hàm lambda ở đây thực hiện một phép cộng và trả về kết quả. Đây là cách định nghĩa hàm ngắn gọn, không cần tên.

7. Kết luận

  • Hàm là một khối mã có thể tái sử dụng trong Python.
  • Sử dụng def để định nghĩa hàm và return để trả về giá trị.
  • Hàm có thể nhận tham số và trả về nhiều giá trị.
  • Bạn có thể sử dụng tham số mặc định và hàm lambda cho các tác vụ đơn giản.

Hàm giúp mã nguồn trở nên gọn gàng, dễ hiểu và dễ bảo trì hơn.

Website Logo

Với hơn 10 năm kinh nghiệm lập trình web và từng làm việc với nhiều framework, ngôn ngữ như PHP, JavaScript, React, jQuery, CSS, HTML, CakePHP, Laravel..., tôi hy vọng những kiến thức được chia sẻ tại đây sẽ hữu ích và thiết thực cho các bạn.

Bình luận

Website Logo

Chào, tôi là Vũ. Đây là blog hướng dẫn lập trình của tôi.

Liên hệ công việc qua email dưới đây.

lhvuctu@gmail.com

Chúng Tôi Trên

Bạn đang muốn học về lập trình website?

Bạn cần nâng cao kiến thức chuyên nghiệp hơn để nâng cao cơ hội nghề nghiệp? Liên hệ