Study/Python study
[Python(파이썬)] 별(Asterisk(*)) 연산자
파크영
2021. 9. 1. 17:08
Asterisk(*) 연산자
하나의 * 연산자는 리스트 또는 튜플에 있는 원소들을 개별 인자로 분리해 차례대로 꺼내서 함수 인자에 대응시킨다.
ex1)
>>> a = [1,2,3]
>>> print(a)
[1, 2, 3]
>>> print(*a)
1 2 3
a 리스트를 * 없이 출력했을 땐 리스트 전체를 리스트 기호와 함께 출력했고 *를 리스트명 앞에 포함했을 땐 원소만 출력했다.
ex2)
>>> def test(x, y):
return x + y
>>> a = (5, 8)
# without *
>>> test(a)
Traceback (most recent call last):
File "<pyshell#19>", line 1, in <module>
test(a)
TypeError: test() missing 1 required positional argument: 'y'
# with *
>>> test(*a)
13
test(a) 실행 - x의 인자에 (5, 8)이 들어가서 y인자가 부족하다고 에러
test(*a) 실행 - a의 원소를 5, 8로 각 각 분리시켜 x = 5, y = 8을 넣어준다.