pbj0812의 코딩 일기

[PYTHON] *args, **kwargs 본문

ComputerLanguage_Program/PYTHON

[PYTHON] *args, **kwargs

pbj0812 2020. 5. 19. 23:53

1. 사용법

 - *뒤의 args는 중요하지 않음.(*가 중요, args 대신 다른 문자를 써도 상관 없음.)

 - 함수에 몇 개의 인자를 넣을지 모르는 상황에서 사용

 - *와 **의 차이는 키워드화의 유무에 따라 분류

2. 실습

 1) *args

  (1) 함수 생성

def test_args(*args):
    for i in args:
        print(i)

  (2) 테스트1

test_args(1)

   - 결과

 

1

  (3) 테스트2

test_args(1, 2, 3, 4, 5, 5, '67', 4, 6, 8)

   - 결과

1
2
3
4
5
5
67
4
6
8

 2) **kwargs

  (1) 함수 생성

def test_args_kwargs(arg1, arg2, arg3):
    print("인자1:", arg1)
    print("인자2:", arg2)
    print("인자3:", arg3)

  (2) *args 사용 및 결과

args = ("two", 3, 5)
test_args_kwargs(*args)

- 결과

인자1: two
인자2: 3
인자3: 5

  (3) **kwargs 사용 및 결과

kwargs = {"arg3": 3, "arg2": "two", "arg1": 5}
test_args_kwargs(**kwargs)

   - 결과

인자1: 5
인자2: two
인자3: 3

3. 참고

 - 중급 파이썬

Comments