때로는 빈 목록 인 기본 매개 변수를 갖는 것이 자연스러워 보입니다. 그러나 파이썬은 이러한 상황에서 예기치 않은 동작을 제공합니다 .
예를 들어, 기능이 있습니다.
def my_func(working_list = []):
working_list.append("a")
print(working_list)
처음 호출하면 기본값이 작동하지만 그 이후의 호출은 기존 목록을 업데이트하고 (각 호출마다 하나의 "a"포함) 업데이트 된 버전을 인쇄합니다.
그래서, 내가 원하는 행동을 얻는 비단 법적인 방법은 무엇입니까 (각 호출에 대한 새로운 목록)?