>백엔드 개발 >파이썬 튜토리얼 >Python 함수의 변수 매개변수 정의 방법 및 매개변수 전달 방법 분석

Python 함수의 변수 매개변수 정의 방법 및 매개변수 전달 방법 분석

巴扎黑
巴扎黑원래의
2017-08-06 16:17:301437검색

이 글에서는 주로 Python 함수 변수 매개변수의 세부 정의와 매개변수 전달 방법에 대한 관련 정보를 소개합니다. 이 부분의 내용을 배우고 이해하는 데 도움이 되는 예제 코드는

Python 함수를 참조하세요. 변수 매개변수 정의 매개변수 전달 방식에 대한 자세한 설명

파이썬에서 함수의 가변 매개변수 정의는 다음과 같습니다.

1. func(*args)

전달된 매개변수는 args에 저장됩니다.


def func(*args): 
  print args 
 
>>> func(1,2,3) 
(1, 2, 3) 
 
>>> func(*[1,2,3])  #这个方式可以直接将一个列表的所有元素当作不定参数 
传入(1, 2, 3)

2.func(**kwargs)

전달된 매개변수는 다음과 같은 사전 형식으로 args에 저장됩니다.


def func(**kwargs): 
  print kwargs 
 
>>> func(a = 1,b = 2, c = 3) 
{'a': 1, 'c': 3, 'b': 2} 
 
>>> func(**{'a':1, 'b':2, 'c':3})   #这个方式可以直接将一个字典的所有键值对当作关键字参数传入 
{'a': 1, 'c': 3, 'b': 2}

3. func(* args, **kwargs)

를 사용할 수도 있습니다. 전달된 순서는 정의 순서와 동일해야 합니다. 여기에는 먼저 무기한 매개변수 목록이 있고 그 다음에는 키워드 매개변수 사전이 있습니다. 예:


def func(*args, **kwargs): 
  print args 
  print kwargs 
 
 
>>> func(1,2,3) 
(1, 2, 3) 
{} 
 
>>> func(*[1,2,3]) 
(1, 2, 3) 
{} 
 
>>> func(a = 1, b = 2, c = 3) 
() 
{'a': 1, 'c': 3, 'b': 2} 
 
>>> func(**{'a':1, 'b':2, 'c':3}) 
() 
{'a': 1, 'c': 3, 'b': 2} 
 
 
>>> func(1,2,3, a = 4, b=5, c=6) 
(1, 2, 3) 
{&#39;a&#39;: 4, &#39;c&#39;: 6, &#39;b&#39;: 5}</span> 
 #这样跳跃传递是不行的 
>>> func(1,2,3, a=4, b=5, c=6, 7) 
SyntaxError: non-keyword arg after keyword arg

위 내용은 Python 함수의 변수 매개변수 정의 방법 및 매개변수 전달 방법 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.