2011-02-03 2 views

답변

3

예외는 소스의 구문 오류이며이를 수정하는 유일한 방법은 함수 호출을 수정하는 것입니다.

Python 2.5.2 (r252:60911, Jan 24 2010, 14:53:14) 
[GCC 4.3.2] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> def f(x): pass 
... 
>>> f(x=1, x=2) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
TypeError: f() got multiple values for keyword argument 'x' 
>>> f(x=1, **{'x': 2}) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
TypeError: f() got multiple values for keyword argument 'x' 

Python 2.6.6 (r266:84297, Aug 24 2010, 18:46:32) [MSC v.1500 32 bit (Intel)] on 
win32 
Type "help", "copyright", "credits" or "license" for more information. 
>>> def f(x): pass 
... 
>>> f(x=1, x=2) 
    File "<stdin>", line 1 
SyntaxError: keyword argument repeated 
>>> f(x=2, **{'x': 1}) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
TypeError: f() got multiple values for keyword argument 'x' 
관련 문제