이 글에서는 Python3 * 및 ** 연산자의 사용법을 소개합니다. 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.
Python에서 *와 **는 문법적 모호성을 가지며, 특히 4가지 유형의 사용법이 있습니다.
1. 산술 연산
*은 곱셈을 나타냅니다.
**는 지수를 나타냅니다.
>>> 2 * 5 //10 >>> 2 ** 5 //32
2. 함수 매개변수
*args 및 **kwargs는 주로 함수 정의에 사용됩니다.
변수 개수의 인수를 함수에 전달할 수 있습니다. 불확실하다는 것은 함수 사용자가 얼마나 많은 매개변수를 전달할지 미리 알 수 없다는 것을 의미합니다. 따라서 이 시나리오에서는 이 두 키워드를 사용하세요. 실제로 *args 및 **kwargs를 작성할 필요는 없습니다. *(별표)는 필수입니다. *ar 및 **k를 쓸 수도 있습니다. *args 및 **kwargs를 작성하는 것은 일반적인 명명 규칙일 뿐입니다.
Python 함수에서 매개변수를 전달하는 방법에는 두 가지가 있습니다:
*args와 **kwargs의 차이점은 둘 다 Python에서 사용할 수 있습니다. 변수 매개변수:
인 키워드 매개변수를 나타냅니다. *args와 **kwargs가 동시에 사용되는 경우 *args 매개변수 열은 **kwargs 앞에 와야 합니다. .
>>> def fun(*args, **kwargs): ... print('args=', args) ... print('kwargs=', kwargs) ... >>> fun(1, 2, 3, 4, A='a', B='b', C='c', D='d') //args= (1, 2, 3, 4) //kwargs= {'A': 'a', 'B': 'b', 'C': 'c', 'D': 'd'}
*args 사용
>>> def fun(name, *args): ... print('你好:', name) ... for i in args: ... print("你的宠物有:", i) ... >>> fun("Geek", "dog", "cat") //你好: Geek //你的宠物有: dog //你的宠物有: cat
**kwargs
>>> def fun(**kwargs): ... for key, value in kwargs.items(): ... print("{0} 喜欢 {1}".format(key, value)) ... >>> fun(Geek="cat", cat="box") //Geek 喜欢 cat //cat 喜欢 box
3.함수 매개변수
함수의 형식 매개변수가 고정 길이 매개변수인 경우 *args 및 **kwargs를 사용하여 호출할 수도 있습니다. 그룹 및 사전 참조 해제 기능:
>>> def fun(data1, data2, data3): ... print("data1: ", data1) ... print("data2: ", data2) ... print("data3: ", data3) ... >>> args = ("one", 2, 3) >>> fun(*args) data1: one data2: 2 data3: 3 >>> kwargs = {"data3": "one", "data2": 2, "data1": 3} >>> fun(**kwargs) data1: 3 data2: 2 data3: one
4. 시퀀스 풀기
순차 풀기 이전 블로그에서 이에 대해 쓴 적이 있습니다. 여기에는 ** 시퀀스 풀기 기능이 없습니다.
>>> a, b, *c = 0, 1, 2, 3 >>> a 0 >>> b 1 >>> c [2, 3]
관련 무료 학습 권장사항: python 비디오 튜토리얼!
위 내용은 Python3에서 * 및 ** 연산자의 사용법은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!