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:키워드 매개 변수 도 위치 매개 변수 처럼 직접 전달 할 수 있 기 때 문 입 니 다.이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Python의 None과 NULL의 차이점 상세 정보그래서 대상 = 속성 + 방법 (사실 방법도 하나의 속성, 데이터 속성과 구별되는 호출 가능한 속성 같은 속성과 방법을 가진 대상을 클래스, 즉 Classl로 분류할 수 있다.클래스는 하나의 청사진과 같아서 하나의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.