2012-04-18 21 views

Trả lời

16

Nó đề cập đến tất cả các đối số từ khóa được chuyển đến hàm không có định nghĩa phương thức. Ví dụ:

>>> def foo(arg, **kwargs): 
...  print kwargs 
... 
>>> foo('a', b="2", c="3", bar="bar") 
{'c': '3', 'b': '2', 'bar': 'bar'} 

Nó tương tự như chỉ sử dụng một dấu hoa thị, trong đó đề cập đến tất cả các đối số không keyword:

>>> def bar(arg, *args): 
...  print args 
... 
>>> bar(1, 2, 3, 'a', 'b') 
(2, 3, 'a', 'b') 

Bạn có thể kết hợp các (và người ta thường làm)

>>> def foobar(*args, **kwargs): 
...  print args 
...  print kwargs 
... 
>>> foobar(1, 2, a='3', spam='eggs') 
(1, 2) 
{'a': '3', 'spam': 'eggs'} 
+0

Điều đó giải thích mọi thứ! Cảm ơn – ACZINT

Các vấn đề liên quan