Learning Log

[Python] 2차원 리스트에 대한 접근

카제xd 2023. 8. 27. 15:43

2차원 리스트를 만들고 요소 하나에 접근해서 값을 바꾸려고 했는데, 자꾸만 모든 요소들에 대해 적용이 되는 현상을 발견했다.

 

 

 

[[]]*20000 이런 방식으로 하면 리스트 안의 요소 리스트들이 모두 같은 참조값을 갖는 듯 하다고 한다.

 

이럴 때는 list comprehension으로 할당을 해주면 문제가 해결된다고 한다.

 

 arr = [[] for i in range(N+1)]

 

 

 

 

출처:

1. https://velog.io/@ledcost/%ED%8C%8C%EC%9D%B4%EC%8D%AC-%EB%B9%88-2%EC%B0%A8%EC%9B%90-%EB%A6%AC%EC%8A%A4%ED%8A%B8-%EC%84%A0%EC%96%B8