Development/Python
[Python][중급으로넘어가기] 여러개의 인자를 튜플로 받아 처리하는 함수 소스 예시 (*args 활용)
Best Junior
2020. 7. 7. 19:43
*args를 활용해 여러개의 인자를 함수가 받아 활용하도록 할 수 있습니다.
( args = arguments의 약자 )
1. 함수에서 *args 활용 소스 예시
*args에서 args는 관례적으로 많이 사용할 뿐, 다른 이름으로 설정하셔도 정상적으로 작동됩니다.
*가 해당 기능을 가능케 해주는 부분입니다.
2번 예제에서는 test라는 변수로 해당 기능을 활용하니 도움이 되실 수 있으니 참고바랍니다.
def add_many(*args):
print('#'*20)
result = 0
print(args)
for i in args:
result += i
return result
print(add_many(1))
print(add_many(1,2,3,4,5))
print(add_many(6,7,8,9,10))
print(add_many(1,2,3,4,5,6,7,8,9,10))
print('#'*20)
참고 : args는 위에서 확인할 수 있듯이 튜플 타입입니다.
2. 특정 인자와 *인자 함께 활용하는 함수 소스 예시
덧셈을 할 것인지, 곱셈을 할 것인지에 대해 첫 변수인 choice에서 데이터를 받고, 이후 뒤에 오는 1개 이상의 데이터를 test 변수에 넣어 처리합니다.
def add_mul(choice, *test):
# test
print(test)
# add
if choice == 'add':
result = 0
for i in test:
result += i
# multiple
if choice == 'mul':
result = 1
for i in test:
result *= i
# result
return result
print(add_mul('add',1,2,3,4))
print(add_mul('mul',1,2,3,4))