프로그램
[파이썬] 함수의 인수 전달(*리스트, **딕셔너리)
오디세이99
2022. 11. 9. 20:18
728x90
반응형
함수에 인수를 전달하는 방법에는
1) 순서대로 전달
def func(a, b):
print(a, b)
func(10, 20)
결과
10 20
2) key로 전달
- 함수 실행 시 b, a 순으로 했다는 겁니다. 그래서 함수 내에서는 정상적으로 받아들입니다.
def func(a, b):
print(a, b)
func(b=20, a=10)
결과
10 20
이를 리스트와 딕셔너리를 사용해서 할 수도 있습니다.
이때 *, ** 이 사용 됩니다.
1) 리스트
- * 를 사용합니다.
- 순서대로 전달된 것과 같이 동작합니다.
- *를 사용하지 않으면 리스트 자체가 인자로 넘어갈 것입니다. 물로 인수 b 항목이 없어서 에러가 발생할 것입니다.
def func(a, b):
print(a, b)
func(*[10, 20])
결과
10 20
2) 딕셔너리
- ** 를 사용합니다.
- key 를 사용할 것과 같이 동작합니다.
def func(b, a):
print(a, b)
func(**{'a':10, 'b':20})
결과
10 20
728x90
반응형