파이썬 어린이 질문해도될까
a = [1, 2, 3, 4]
b = [a]
라고 해볼게
즉 b = [[1, 2, 3, 4]] 이겠지? 여기서
a.pop(-1) 을 했을때, 왜 b는 건드리지도 않았는데
b = [[1, 2, 3]] 이 되는거야? 제발
b = [a] 로 해놓으면 평생따라다니는거야?
아니 리스트형이 아닌 정수형에서 비슷하게 해볼게
a = 10
b = a + 10 <- b는 a + 10 이고
b
20
a += 1 <- 여기서 a를 1증가시켰음에도
a
11
b
20 <- b 는 여전히 20 이었잖아
1. 리스트형은 정수형과 다르게 b=[a]라고 써놓으면 연결관계가 평생 성립하는거야? a리스트에 변화가 생기면 a로 정의되었었던 b는 다시 정의되는건가?
근데 이건 상식적이지 않은데... b = a + 10 이라고 써놓고 a를 증가시켜도 b가 바뀌진 않잖아...
2. 아니면 pop메서드는 특수한 기능이 있어서 실행되면 모든 연결관계를 새로고침(?)하는건가..
내생각엔 직관적이진 않은데 1번같아
그래서
A) 왜 이런일이 일어나는거야
B). a의 한 요소를 제거했을때 b가 영향받지 않게 하려면 어떻게해야해?
제발 정신나갈거같아
b = [a] 를 하면 a가 복사되는 게 아니야 그냥 a가 가리키던 곳을 같이 가리키는 거지
그런거싫음 딥카피해
너무고마워형들. 이제 정신 안나갈거같애