t = (1, [2, 3], 4)
t[1][0] = 99
print(t)
튜플은 불변자료형이지만, 위와 같은 코드를 실행하면 오류가 나지 않고 정상적으로 (1, [99, 3], 4)가 출력됩니다.
결과적으로 튜플 내부의 항목이 [2, 3]에서 [99, 3]으로 바뀐 것처럼 보이는데, 이는 "튜플의 항목은 일체 변경할 수 없다"는 교안의 기본 정의와 충돌합니다. 파이썬 메커니즘에서 튜플이 말하는 '불변'의 진짜 물리적인 기준과 범위는 어디까지인가요?
튜플은 불변자료형이지만, 위와 같은 코드를 실행하면 오류가 나지 않고 정상적으로 (1, [99, 3], 4)가 출력됩니다.
결과적으로 튜플 내부의 항목이 [2, 3]에서 [99, 3]으로 바뀐 것처럼 보이는데, 이는 "튜플의 항목은 일체 변경할 수 없다"는 교안의 기본 정의와 충돌합니다. 파이썬 메커니즘에서 튜플이 말하는 '불변'의 진짜 물리적인 기준과 범위는 어디까지인가요?