Đối tượng chức năng có các thuộc tính __defaults__
và __kwdefaults__
. Tôi thấy rằng nếu một hàm có một số đối số mặc định thì chúng sẽ được đặt thành một bộ dữ liệu là __defaults__
nhưng __kwdefaults__
là None
. Khi nào được sử dụng thuộc tính __kwdefaults__
?Việc sử dụng __kwdefaults__ là thuộc tính đối tượng hàm là gì?
5
A
Trả lời
7
def foo(arg1, arg2, arg3, *args, kwarg1="FOO", kwarg2="BAR", kwarg3="BAZ"):
pass
print(foo.__kwdefaults__)
Output (Python 3):
{'kwarg1': 'FOO', 'kwarg2': 'BAR', 'kwarg3': 'BAZ'}
Kể từ khi *args
sẽ nuốt tất cả các đối phi từ khóa, các đối số sau nó phải được thông qua với từ khoá. Xem PEP 3102.
6
Nó được sử dụng cho keyword-only arguments:
>>> def a(a, *, b=2): pass
...
>>> a.__kwdefaults__
{'b': 2}
>>> def a(*args, a=1): pass
...
>>> a.__kwdefaults__
{'a': 1}
Các vấn đề liên quan
- 1. Các thuộc tính của đối tượng hàm là gì?
- 2. @ trong thuộc tính đối tượng là gì?
- 3. Việc sử dụng cho thuộc tính FormsAuthenticationTicket.Version là gì?
- 4. Thuộc tính độ dài của các hàm tạo hàm, mảng và đối tượng là gì?
- 5. Việc sử dụng một đối tượng liên tục là gì?
- 6. Ý nghĩa của thuộc tính hàm tạo Javascript là gì?
- 7. Thuộc tính của đối tượng hàm Javascript
- 8. Việc sử dụng "??" là gì?
- 9. Việc sử dụng Indexers là gì?
- 10. Cách thực hành tốt nhất để đặt tên các thuộc tính là đối tượng là gì?
- 11. Việc sử dụng biểu tượng @ trong PHP là gì?
- 12. việc sử dụng biểu tượng ống là gì trong yaml
- 13. Ưu điểm của việc sử dụng Automapper là gì?
- 14. Việc sử dụng tạo một hàm tạo cho một lớp trừu tượng trong Java là gì?
- 15. Loại không bắt buộcLỗi: Thuộc tính '$' của đối tượng [đối tượng toàn cục] không phải là một hàm?
- 16. Đối tượng chrome là gì?
- 17. Việc sử dụng window.external là gì?
- 18. Sự khác nhau giữa việc sử dụng onclick của jQuery và thuộc tính onclick là gì?
- 19. Việc sử dụng thuộc tính isLocal trong jQuery Ajax là gì?
- 20. Việc sử dụng điểm mở rộng của Ant nếu/trừ các thuộc tính là gì?
- 21. Thuộc tính ThemeInfo là gì?
- 22. Nhận thuộc tính đối tượng PHP là số
- 23. Khi nào là đối tượng thuộc tính được tạo?
- 24. Tại sao JSON.stringify không hiển thị các thuộc tính đối tượng là các hàm?
- 25. Cú pháp để truy cập các thuộc tính đối tượng PHP là gì?
- 26. Việc sử dụng đối tượng điều phối trong WPF là gì?
- 27. Việc sử dụng cấu trúc dữ liệu Heap là gì?
- 28. Thuộc tính phối cảnh CSS3 là gì?
- 29. Sử dụng. hoặc [] để truy cập các thuộc tính của đối tượng - sự khác biệt là gì?
- 30. Thuộc tính cho đối với thẻ HTML là gì?