Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Default arguments (tham số mặc định) trong Python

Python cho phép gán giá trị mặc định cho tham số hàm bằng toán tử =. Nếu không truyền đối số đó khi gọi, giá trị mặc định sẽ được dùng.

Cú pháp

def defaultArg(name, foo='Come here!'):
    print(name, foo)

defaultArg('Joe')           # Joe Come here!
defaultArg('Joe', 'Hi!')    # Joe Hi!

Đầu ra

Joe Come here!
Joe Hi!

Đặc điểm quan trọng

  • Giá trị mặc định được đánh giá một lần khi định nghĩa hàm, không phải mỗi lần gọi.
  • Cẩn thận với mutable default arguments (list, dict) - xem bài 1003108190.
  • Default arguments phải đứng sau required arguments.

Ví dụ nhiều default args

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

greet("Alice")              # Hello, Alice!
greet("Bob", "Hi")          # Hi, Bob!
greet("Carol", punct=".")   # Hello, Carol. (keyword arg)

Best practice: Dùng None cho mutable defaults, khởi tạo bên trong hàm.