Trong bài viết này, chúng ta sẽ thảo luận về
5
4 và 5
5 trong Python cùng với cách sử dụng của chúng và một số ví dụKhi viết hàm, chúng ta thường cần truyền giá trị cho hàm. Các giá trị này được gọi là đối số hàm
Vấn đề với đối số chức năng
Hãy định nghĩa một hàm để cộng hai số trong Python. Chúng tôi sẽ viết nó như thế này
def add[x, y]:
return x+y
print[add[2,3]]
đầu ra
5
Nếu bạn cần thêm ba số thì sao?
def add[x, y, z]:
return x+y+z
print[add[2, 3, 5]]
đầu ra
10
Đó không phải là khá đơn giản?
Nhưng nếu chúng ta lại được yêu cầu chỉ cộng hai số thì sao?
def add[x, y, z]:
return x+y+z
print[add[2, 3]]
đầu ra
Traceback [most recent call last]:
File "D:\Quarantine\Test\Blog-Codes\args-kwargs\main.py", line 14, in
print[add[2, 3]]
TypeError: add[] missing 1 required positional argument: 'z'
Bạn thấy vấn đề?
Vấn đề phát sinh khi chúng ta có một số lượng đối số thay đổi. Chúng ta có nên tiếp tục sửa đổi hàm để chấp nhận số lượng đối số chính xác không?
Vì vậy, phải có một số cách khác để làm điều đó. Đây là nơi mà
5
4 và 5
5 nhảy vàoBạn có thể sử dụng
5
4 và 5
5 làm đối số của hàm khi không chắc chắn về số lượng đối số cần truyền vào hàmCách sử dụng *args trong Python
5
4 cho phép chúng tôi chuyển một số lượng đối số không phải từ khóa khác nhau cho hàm Python. Trong hàm, chúng ta nên sử dụng dấu hoa thị [def add[x, y, z]:
return x+y+z
print[add[2, 3, 5]]
1] trước tên tham số để truyền một số đối số thay đổi5
4đầu ra
5
5Do đó, chúng tôi chắc chắn rằng các đối số đã truyền này tạo thành một bộ bên trong hàm có cùng tên với tham số ngoại trừ
def add[x, y, z]:
return x+y+z
print[add[2, 3, 5]]
1Bây giờ, hãy viết lại hàm
def add[x, y, z]:
return x+y+z
print[add[2, 3, 5]]
3 của chúng ta với số lượng đối số thay đổi5
8đầu ra
5
9Lưu ý rằng tên của đối số không nhất thiết phải là
def add[x, y, z]:
return x+y+z
print[add[2, 3, 5]]
4 – nó có thể là bất cứ thứ gì. Trong trường hợp này là def add[x, y, z]:
return x+y+z
print[add[2, 3, 5]]
5. Nhưng nó thường là một cách tiêu chuẩn để sử dụng tên def add[x, y, z]:
return x+y+z
print[add[2, 3, 5]]
6Cách sử dụng **kwargs trong Python
def add[x, y, z]:
return x+y+z
print[add[2, 3, 5]]
7 cho phép chúng tôi chuyển một số lượng đối số từ khóa khác nhau cho hàm Python. Trong hàm, chúng ta sử dụng dấu sao kép [def add[x, y, z]:
return x+y+z
print[add[2, 3, 5]]
8] trước tên tham số để biểu thị loại đối số này5
0đầu ra
5
1Do đó, chúng ta thấy rằng các đối số, trong trường hợp này, được truyền dưới dạng từ điển và các đối số này tạo thành một từ điển bên trong hàm có tên giống như tham số ngoại trừ
def add[x, y, z]:
return x+y+z
print[add[2, 3, 5]]
8Bây giờ, hãy hoàn thành hàm
10
0 để trả về tổng số trái cây5
2đầu ra
5
3Lưu ý rằng tên của đối số không nhất thiết phải là
10
1 – một lần nữa, nó có thể là bất cứ thứ gì. Trong trường hợp này, đó là 10
2. Nhưng nó thường là một cách tiêu chuẩn để sử dụng tên 5
5Phần kết luận
Trong bài viết này, chúng ta đã tìm hiểu về hai từ khóa đặc biệt trong Python –
5
4 và 5
5. Những điều này làm cho một hàm Python trở nên linh hoạt để nó có thể chấp nhận một số lượng đối số và đối số từ khóa khác nhau, tương ứngCảm ơn vì đã đọc
Bạn có thể tìm thấy mã cho blog này tại đây
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
Nhà phát triển ứng dụng tại Thoughtworks Ấn Độ
Nếu bạn đọc đến đây, hãy tweet cho tác giả để cho họ thấy bạn quan tâm. Tweet một lời cảm ơn
Học cách viết mã miễn phí. Chương trình giảng dạy mã nguồn mở của freeCodeCamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu