팁: Python에서 변경 가능한 기본 인수를 주의하십시오.
2401 단어 programmingbeginnerspython
다음 코드를 예로 들어 보겠습니다. 함수에 대한 모든 호출은 동일한 목록을 공유합니다. 따라서 두 번째로 호출될 때 함수는 빈 목록으로 시작하지 않습니다. 대신 기본 인수는 이전 호출의 값을 포함하는 목록입니다.
def append(n, l = []):
l.append(n)
return l
append(0) # [0]
append(1) # [0, 1]
변경 가능한 개체를 함수의 기본값으로 사용해야 하는 경우 대신 인수의 기본값을
None
로 설정할 수 있습니다. 그런 다음 함수 본문에서 확인하면 None
부작용 없이 원하는 가변 값으로 설정할 수 있습니다.def append(n, l = None):
if l is None:
l = []
l.append(n)
return l
append(0) # [0]
append(1) # [1]
짧은 고품질 코드 스니펫과 기사가 마음에 드십니까? 우리도 그래! 이와 같은 더 많은 기사를 보려면 30 seconds of code을 방문하거나 일일 JavaScript, React 및 Python 스니펫을 보려면 팔로우하세요! 👨💻
Reference
이 문제에 관하여(팁: Python에서 변경 가능한 기본 인수를 주의하십시오.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/trinityyi/tip-watch-out-for-mutable-default-arguments-in-python-d44텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)