본문 바로가기
5-1. 파이썬 제공 기본 자료구조/리스트

[파이썬 기초] 리스트 생성 시 주의할 점 (리스트 참조)

by 만다린망고 2020. 11. 10.
반응형

[파이썬 기초] 

리스트 생성 시 주의할 점 (리스트 참조)


리스트를 참조하여 생성할 때 주의할 사항이 있습니다. 이해를 위해 예를 하나 들겠습니다. 


리스트 A를 정의하고, A를 참조하여 B를 만들겠습니다. 


>>> A=[1,2,3]

>>> B=A

>>> B

[1, 2, 3]


만약 A를 통채로 바꾸면 B가 어떻게 될까요? 


>>> A=[10,20]

>>> B

[1, 2, 3]


B는 처음에 참조한 값에서 바뀌지 않습니다. 그렇다면 한번 참조한 뒤에는 A의 변화가 B에 영향을 미치지 않는걸까요? 


다시 A를 정의하고, A를 참조하여 B를 만들어봅시다. 


>>> A=[1,2,3]

>>> B=A

>>> B

[1, 2, 3]


이번에는 A의 첫번째 원소만 바뀌봅시다. 


>>> A[0]=100

>>> B

[100, 2, 3]


B가 바뀌었습니다. 


이를 통해 알 수 있는 것은, 참조당한 리스트 A가 재정의 될 경우 참조한 B는 처음에 참조한 값을 유지하고,  참조당한 리스트 A의 일부가 바뀔 경우에는 참조한 B도 바뀐다는 사실입니다. 어떤 참조하여 리스트를 정의할 때 이 점을 유의해야 합니다. 요약하면 아래와 같습니다. 


B가 A 참조 -> A 전체 변경 -> B에 영향 없음

B가 A 참조 -> A 일부 변경 -> B도 변경됨

반응형

댓글