파이썬의 가변 기본 인수로 인한 예상치 못한 동작 이해하기
·
Language/Python
파이썬은 강력하고 유연한 프로그래밍 언어이지만, 가끔은 예상치 못한 동작으로 개발자를 당황하게 만들기도 합니다. 그중 하나가 함수의 기본 인수로 가변 객체를 사용할 때 발생하는 문제입니다. 이번 글에서는 이러한 문제를 이해하고 해결하는 방법에 대해 알아보겠습니다.문제 상황다음과 같은 코드를 살펴보겠습니다.def surprise(my_list = []): print(my_list) my_list.append('x')surprise()surprise()많은 분들은 이 코드의 출력이 다음과 같을 것이라고 예상할 것입니다.[][]하지만 실제로 코드를 실행해 보면 다음과 같은 결과가 나옵니다.[]['x']왜 이런 일이 발생할까요?원인 분석1. 기본 인수는 한 번만 평가됩니다.파이썬에서 함수의 기본 인수..