반응형
질문
어떤 함수가 다음과 같다고 가정해봅시다:
def myfun(a, b, c):
return (a * 2, b + c, c + b)
튜플 some_tuple = (1, "foo", "bar")
이 주어졌을 때, some_tuple
을 사용하여 myfun
을 호출하는 방법은 무엇인가요? 이렇게 하면 결과값 (2, "foobar", "barfoo")
가 출력되어야 합니다.
저는 myfun
이 튜플을 직접 받도록 정의할 수도 있지만, 기존의 myfun
을 호출하고 싶습니다.
참고: 함수 호출에서 ** (두 개의 별표/별표)와 * (별표/별표)는 무엇을 의미하나요?.
답변
myfun(*some_tuple)
는 정확히 요청한 대로 동작합니다. *
연산자는 단순히 튜플(또는 어떤 반복 가능한 객체)을 풀어서 함수에 위치 인수로 전달합니다. 인수 풀기에 대해 더 자세히 알아보세요.
반응형
댓글