* args 와 * kwargs 가 무엇 입 니까?

def example(*args, **kwargs):
    print('-------------------')
    print('args = ', args)
    print('kwargs = ', kwargs)
    print('-------------------')
 
 
if __name__ == '__main__':
    example(1, 2, 3)
    example(a=1, b=2, c=3)
    example(1, 2, 3, a=4, b=5, c=6)
    example('a', True, 1, a=1, b='b', c=False)
-------------------
args =  (1, 2, 3)
kwargs =  {}
-------------------
-------------------
args =  ()
kwargs =  {'a': 1, 'b': 2, 'c': 3}
-------------------
-------------------
args =  (1, 2, 3)
kwargs =  {'a': 4, 'b': 5, 'c': 6}
-------------------
-------------------
args =  ('a', True, 1)
kwargs =  {'a': 1, 'b': 'b', 'c': False}
-------------------

위의 코드 에서 볼 수 있 듯 이 * args 와 * * kwargs 는 Python 의 두 가지 가 변 적 인 매개 변수 이 고 전자의 유형 은 tuple 이 며 여러 개의 이름 없 는 매개 변 수 를 나타 낸다.후 자 는 dict 로 키워드 인 자 를 나타 낸다.
또한 주의해 야 할 것 은 * args 와 * * kwargs 를 동시에 사용 할 때 * args 인 자 는 * * kwargs 이전에 있어 야 하 며 그렇지 않 으 면 오류 가 발생 할 수 있 습 니 다.
example(1, 2, a=3, 4)

잘못 을 보고 하 다
SyntaxError: positional argument follows keyword argument

---------------------  작자  출처: CSDN  원문:https://blog.csdn.net/zzc15806/article/details/79595108  저작권 성명: 본 고 는 블 로 거들 의 오리지널 글 입 니 다. 블 로 거들 링크 를 동봉 해 주 십시오!

좋은 웹페이지 즐겨찾기