dictionary를 키워드 인자처럼 넘기는게 가능한가요?
조회수 6220회
dictionary를 키워드 인자처럼 넘기는게 가능한가요?
소스코드
d = dict(param='test')
def f(param):
print param
f(d)
출력 :
{'param': 'test'}
발생하는 문제 및 실행환경
지금 제 코드는 이렇게 실행되는데 저는 그냥 test
만 출력되게 만들고 싶습니다. dict를 키워드 인자처럼 받아서
d = dict(p1=1, p2=2)
def f2(p1,p2):
print p1, p2
f2(d)
이런식으로 출력하고 싶은데 어떡하면 이렇게 만들 수 있을까요?
1 답변
-
그러니까
dict(p1=1, p2=2)
의p1
,p2
가f2(p1, p2)
의p1
,p2
의 인자로 바로 들어가게 하고 싶단 말씀이신 거죠?그럼 함수를 call할 때 dict 앞에
**
오퍼레이터를 쓰면 됩니다. 파이썬에서는 unpacking이라고 하고 자세한 사항은 Unpacking Argument List에 나와있습니다.d = dict(p1=1, p2=2) def f2(p1,p2): print p1, p2 f2(**d)
댓글 입력