>백엔드 개발 >파이썬 튜토리얼 >Python3에서 * 및 ** 연산자의 사용법은 무엇입니까

Python3에서 * 및 ** 연산자의 사용법은 무엇입니까

醉折花枝作酒筹
醉折花枝作酒筹앞으로
2021-04-27 09:05:109770검색

이 글에서는 Python3 * 및 ** 연산자의 사용법을 소개합니다. 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.

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는 본질적으로 dict

인 키워드 매개변수를 나타냅니다. *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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제