본문 바로가기

Development/Python

[Python] *args와 **kwargs

728x90

Python Logo

 

*, **는 여러 개의 인수를 받을 때, 키워드 인수를 받을 때 사용합니다.

 

*args

 

*args는 *arguments의 줄임말입니다. *a라고 써도 되고, *b라고 써도 상관없습니다. 이 지시어는 여러 개의 인자를 함수로 받을 때 사용합니다.

사람의 이름을 입력하여 성과 이름을 분리하여 출력하는 코드를 작성하였습니다.

사용자가 몇 개의 인자를 넣을지 알 수 없을 때, *args를 사용하여 인자를 입력받습니다.

*args에 해당하는 *Names를 출력해보면 tuple 형태임을 알 수 있습니다. 여러 개의 인자를 입력받을 경우 함수에서 튜플로 인식하여 처리합니다.

 

kwargs

 

**kwargs는 key 값 = value 값 형태로 함수를 호출할 수 있습니다.

그것은 그대로 딕셔너리 형태로 {'key': 'value'} 함수로 전달됩니다.

좀 더 심화적으로 응용하면 특정 key 값에 따라 다른 함수가 나오도록 할 수 있다.

 

728x90

'Development > Python' 카테고리의 다른 글

[Python] class - 3) self 이해하기  (0) 2021.01.27
[Python] print  (0) 2021.01.25
[Python] rfind  (0) 2021.01.21