파이썬에서 asterisk 기호 (*)는 곱셈, 제곱을 하는 연산자 외에도 다양한 기능들이 있다.
asterisk 기호가 한 개 쓰일 때와 두 개 쓰일 때로 나누어서 살펴보자.
*
파라미터에 *를 붙여 입력한 개수만큼 입력받을 수 있는 가변인자로 설정할 수 있다.
def asterisk_test(*args): # args는 튜플로 저장된다.
return sum(args)
print(asterisk_test(1,2,3,4,5))
# 출력: 15
iterable한 자료형과 함께 사용하면 unpacking을 하는 역할로 쓰인다.
def asterisk_test(*args):
print(args)
print(*args)
asterisk_test(1,2,3,4,5)
# 출력:
# (1, 2, 3, 4, 5)
# 1 2 3 4 5
**
파라미터에 **를 붙여 키워드 인자를 입력받을 수 있다.
def kwargs_test(**kwargs): # kwargs는 dict로 저장된다.
for key, value in kwargs.items():
print(f"{key} is {value}")
kwargs_test(myName="sangwon")
# 출력: myName is sangwon
dict 자료형을 unpacking할 때 사용할 수도 있다.
def asterisk_test(a, b, c, d):
print(a, b, c, d)
data = {"d":1, "c":2, "b":3}
asterisk_test(10, **data)
# 출력: 10 3 2 1
'Backend > Python' 카테고리의 다른 글
[Python] closure (0) | 2023.03.07 |
---|---|
[Python] 파이썬 class의 특징 (0) | 2023.03.07 |
[Python] generator (0) | 2023.03.07 |
[Python] 파이썬 코드만의 특징 (0) | 2023.03.06 |
[Python] __name__은 무슨 의미일까? (0) | 2023.03.06 |