Python 매개 변수 전달 및 수집 메커니즘 원리 분석

python 매개 변 수 를 전달 할 때 주로 위치 매개 변수 와 키워드 매개 변수 가 있 습 니 다.
1.위치 매개 변수:말 그대로 매개 변수의 위치 순 서 는 매우 중요 하 다.위치 에 따라 직접 값 을 부여 하기 때문이다.

def func1(a, b):
  print(a,b) #     ,       
func1(1,2)

2.키워드 매개 변수:우선 위 치 를 그렇게 중요 하지 않 게 합 니 다.매개 변수 가 많 기 때문에 어떤 사람들 은 위 치 를 기억 하지 못 하 는 것 도 정상 입 니 다.그 다음으로 더 중요 한 것 은 초기 값 을 제공 할 수 있다 는 것 이다.

def func2(c=1, d=2):
  print(c,d) #      ,1.          ;2.       
func2()  #     
func2(100,200) #                 
func2(c=100,d=200) #    
func2(d=200,c=200)

3.위치 매개 변수 와 키워드 매개 변 수 를 혼합 할 때 위치 매개 변 수 는 모두 키워드 매개 변수 앞 에 있어 야 합 니 다.

def func3(a, b, c=1):
  print(a,b,c) #      ,         ,                   
func3(1,2,100)
func3(1,2,c=100)

4.단성 호'*'를 통 해 위치 파 라 메 터 를 수집 하여 원 그룹 을 만 들 지만 사용 할 때 도 질서 가 있 습 니 다.

p = (1,2,)
def func4(*para): #      ,          
  print(para)
func4(*p)  #         
func4(*(1,2,))

5.쌍성 호'**'를 통 해 키워드 파 라미 터 를 수집 하여 사전 형성

arg = {'c':1,'d':2}
def func5(**args): #      ,           
  print(args)
  print(args['c'])
func5(**arg)  #     
func5(**{'c':1,'d':2}) #  ,        

6.위치 매개 변수 와 단성 번호'*'수집 매개 변수의 혼합:단성 번호'*'는 해당 위치 매개 변수 가 없 는 다른 위치 매개 변 수 를 수집 하 는 것 을 나타 낸다.

def func6(a, b, *para): #       ,*                   ,      ,       
  print(a,b)
  print('para:',para)
func6(1,2,3,4,5)

7.키워드 파라미터 와 쌍성 호'*'수집 파라미터 의 혼합:동 리 쌍성 호'*'는 키워드 파라미터 에 대응 하지 않 는 다른 키워드 파 라미 터 를 수집 함 을 나타 낸다

def func7(c=1, d=2, **args): #        ,**                     ,         
  print(c,d)
  print('args:',args)
func7(1,d=2,e=3,f=4)

8.위치 매개 변수,키워드 매개 변수 혼합 단성 호 수집 매개 변수,쌍성 호 수집 매개 변수:

def func(a, b, c=1, d=2, *ee, **ff): #            :* **                  
  print(a,b,c,d)
  print(ee) #      
  print(ff) #      
# func(100,200,300,400,c=500,d=600,e=700,f=800) # TypeError: func() got multiple values for argument 'c',                       
func(100,200,c=500,d=600,e=700,f=800)
func(100,200,300,400,500,600,e=700,f=800) #               (   )     (   )
TypeError:func()got multiple values for argument:키워드 매개 변수 도 위치 매개 변수 처럼 직접 전달 할 수 있 기 때 문 입 니 다.

이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기