편집을 취소할 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.
최신판 | 당신의 편집 | ||
1번째 줄: | 1번째 줄: | ||
==개요== | ==개요== | ||
;Python 가변길이 매개변수 *args, **kwargs | ;Python 가변길이 매개변수 *args, **kwargs | ||
;<nowiki>*args, **kwargs</nowiki> | |||
*<code>*args</code> 의 args는 arguments 의 약어임 | *<code>*args</code> 의 args는 arguments 의 약어임 | ||
*<code>**kwargs</code> 의 kwargs는 keyword arguments 의 약어임 | *<code>**kwargs</code> 의 kwargs는 keyword arguments 의 약어임 | ||
==*args== | ==<nowiki>*</nowiki>args== | ||
*개수 제한 없이 튜플 형태의 인수를 받아 올 수 있음 | *개수 제한 없이 튜플 형태의 인수를 받아 올 수 있음 | ||
<source lang='python'> | |||
< | # test.py | ||
def func(*args): | def func(*args): | ||
print(args) | print(args) | ||
15번째 줄: | 17번째 줄: | ||
func(1, 2) | func(1, 2) | ||
func(1, 2, 3) | func(1, 2, 3) | ||
</ | </source> | ||
< | <source lang='console'> | ||
john@zetawiki$ python test.py | john@zetawiki$ python test.py | ||
(1,) | (1,) | ||
24번째 줄: | 26번째 줄: | ||
(1, 2, 3) | (1, 2, 3) | ||
<class 'tuple'> | <class 'tuple'> | ||
</ | </source> | ||
:→인수의 개수와 상관없이 튜플 형태로 개수를 받아옴 | :→인수의 개수와 상관없이 튜플 형태로 개수를 받아옴 | ||
==**kwargs== | ==<nowiki>**</nowiki>kwargs== | ||
* 개수 제한없이 딕셔너리 형태의 인수를 받아 올 수 있음 | *개수 제한없이 딕셔너리 형태의 인수를 받아 올 수 있음 | ||
* < | *<nowiki>*</nowiki>가 2개 사용됨 | ||
<source lang='python'> | |||
< | # test.py | ||
def func(**kwargs): | def func(**kwargs): | ||
print(kwargs) | print(kwargs) | ||
39번째 줄: | 42번째 줄: | ||
func(a=1, b=2) | func(a=1, b=2) | ||
func(a=1, b=2, c=3) | func(a=1, b=2, c=3) | ||
</ | </source> | ||
< | <source lang='console'> | ||
john@zetawiki$ python test.py | john@zetawiki$ python test.py | ||
{'a': 1} | {'a': 1} | ||
48번째 줄: | 51번째 줄: | ||
{'a': 1, 'c': 3, 'b': 2} | {'a': 1, 'c': 3, 'b': 2} | ||
<type 'dict'> | <type 'dict'> | ||
</ | </source> | ||
:→인수의 개수와 상관없이 딕셔너리 형태로 개수를 받아옴 | :→인수의 개수와 상관없이 딕셔너리 형태로 개수를 받아옴 | ||