#python #anaconda #jupyter-notebook #visual-code #html #css #javascript #http

제목[re]slicing 과 aliasing의 차이2023-10-23 00:14
작성자
첨부파일1.jpg (1.02MB)2.jpg (1.03MB)

안녕하세요 답변 감사합니다! 

말씀해주신대로 b = a[:]를 직접 작성해보다가 의문이 하나 들어서 추가 질문을 작성하게 되었습니다. 

첨부한 코드에서 a와 b , aa와 bb의 관계가 리스트가 들어간 것을 제외하면 동일 하다고 생각하는데 리스트가 들어갔다고 a와 b때와는 다르게 aa와 bb때 aa리스트까지 변화하는게 여전히 잘 이해가 되지 않습니다.. 

강의자료를 참고해서 알려주신방법대로 그림도 그려보았습니다. 

두번째 그림대로 하면 aa리스트가 변화하지 않아야하는데 어디를 잘못생각하고 있는걸까요..?


코드는 밑에 첨부하겠습니다.


>>> a = [0,1,2,3]

>>> b = a[:]

>>> b[0] = 8

>>> print(b)

       [8, 1, 2, 3]

>>> print(a)

       [0, 1, 2, 3]


>>> aa = [[0,1],2,3]

>>> bb = aa[:]

>>> bb[0][0] = 8

>>> print(bb)

       [[8, 1], 2, 3]

>>> print(aa)

       [[8, 1], 2, 3]



댓글
이전slicing 과 aliasing의 차이2023-10-22
다음File 관련 질문2023-10-21