-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
list 질문입니다.
21.02.09 14:26 작성 조회수 86
1
tuple은 불변형이기 때문에 변화가 있을 때마다 아예 새로운 id값을 생성해서 변수를 할당하고
list는 가변형이기 때문에 그냥 그 id값에 값을 추가하는 식이 된다고 이해했습니다.
그런데 m = m * 2와 m *= 2의 경우 전자는 id값에 변화가 생기고, 후자는 id값에 변화가 생기지 않는데 이는 두 연산자가 하는 일이 본질적으로 동일하지만 내부적으로 처리하는 과정이 다르기 때문인가요?
답변을 작성해보세요.
4
좋은사람
지식공유자2021.02.10
네 맞습니다. 정확하게 이해하셨어요.
아래 예제 한 번 보세요.(안보이면 드래그)
>>> a = b = []
>>> a += [5]
>>> a
[5]
>>> b
[5]
>>> a = a + [5]
>>> a
[5, 5]
>>> b
[5]
답변 1