728x90
반응형
https://docs.python.org/3/whatsnew/3.8.html
What’s New In Python 3.8 — Python 3.10.5 documentation
What’s New In Python 3.8 Editor Raymond Hettinger This article explains the new features in Python 3.8, compared to 3.7. Python 3.8 was released on October 14, 2019. For full details, see the changelog. Summary – Release highlights New Features Assignm
docs.python.org
위치 전용 매개 변수
일부 함수 매개 변수를 위치적으로 지정해야만 하고 키워드 인자로 사용할 수 없도록 지시하는 새로운 함수 매개 변수 문법 / 이 있습니다. 이것은 Larry Hastings의 Argument Clinic 도구로 어노테이트된 C 함수들에 대해 help()가 보여주는 것과 같은 표기법입니다.
다음 예에서, 매개 변수 a와 b는 위치 전용이며, c나 d는 위치나 키워드일 수 있으며, e나 f는 키워드 전용이어야 합니다:
def f(a, b, /, c, d, *, e, f):
print(a, b, c, d, e, f)
다음은 유효한 호출입니다:
f(10, 20, 30, d=40, e=50, f=60)
하지만, 다음은 잘못된 호출입니다:
f(10, b=20, c=30, d=40, e=50, f=60) # b cannot be a keyword argument
f(10, 20, 30, 40, 50, f=60) # e must be a keyword argument
이 표기법의 한 가지 사용 사례는 순수 파이썬 함수가 기존 C 코드 함수의 동작을 완전히 흉내 낼 수 있다는 것입니다. 예를 들어, 내장 divmod() 함수는 키워드 인자를 허용하지 않습니다:
def divmod(a, b, /):
"Emulate the built in divmod() function"
return (a // b, a % b)
# '/' 이 후의 파라미터는 위치(어디든 상관없음), 키워드(args나 kwargs) 일 수 있다.
# '*' 이 후의 파라미터는 키워드여야 한다.
반응형
'Python' 카테고리의 다른 글
python GPU memory print (0) | 2022.12.27 |
---|---|
[python 3.8-] Print Format (0) | 2022.06.13 |
[Code-Server] 코드 서버에서 주피터 노트북 사용하기 (0) | 2021.07.11 |
[Code-Server] import-im6.q16: unable to open X server 에러 (0) | 2021.07.11 |
[Jupyter Notebook] 주피터 노트북 셀 스크립트 너비 조절(cell script option), 판다스 너비 조절 (0) | 2021.03.21 |