python 가변인자 *, 가변 키워드인자 **
2019. 8. 19. 12:25ㆍPL/Python
- 개수가 정해지지 않은 변수를 함수의 파라미터로 사용하는 방법
- * asterisk 기호를 사용해서 함수의 파라미터를 표시한다
- 가변인자로 입력된 값은 tuple type으로 사용된다 (참고로 tuple은 () 안에 데이터를 담는다)
- 오직 한 개만 사용할 수 있고, 맨 마지막에서 사용되어야 한다
- 보통 가변인자 이름은 args를 약속처럼 사용한다
# args에는 tuple 형태로 (3, 4, 5)가 들어간다
def asterisk_test(a, b, *args):
print(args)
return a+b+sum(args)
print(asterisk_test(1, 2, 3, 4, 5))
asterisk에서의 unpacking에서도 * 가변인자를 사용해 가변 길이의 데이터를 받아올 수 있다
def asterink_test(*args):
x, y, *z = args
return x, y, z
print(asterink_test(1, 2, 3, 4, 5, 6, 7, 8))
가변 키워드인자 **는 c++의 map과 유사하다, 키워드와 값을 같이 할당해준다
def kwargs_test(**kwargs):
print(kwargs)
kwargs_test(a=1, b=2, c=3)
kwargs_test(first=1, second=2, third=3)
가변키워드 인자는 다음과 같이 원소에 접근할 수 있다
kwargs["키워드"]
def kwargs_test(**kwargs):
print(kwargs["a"])
kwargs_test(a=1, b=2, c=3)
'PL > Python' 카테고리의 다른 글
파이썬 String 거꾸로 출력하기 (0) | 2019.08.27 |
---|---|
cmd창에서 파이썬 콘솔 지우기 (0) | 2019.08.27 |
파이썬 코딩 컨벤션 atom flake8 설치 (0) | 2019.08.18 |
python에서의 call by value & call by reference (0) | 2019.08.18 |
sort와 sorted의 차이 (0) | 2019.08.18 |