본문 바로가기
Python

[python] 파이썬 2차원 배열 선언 하기

by ginny. 2024. 6. 19.

2차원 배열 선언 하기

rows = 10
cols = 5
arr = [[0 for j in range(cols)] for i in range(rows)]

 

틀린 방법

rows = 10
cols = 5
arr = [[0] * cols] * rows

 

Python에서는 * 연산자를 이용해 배열을 선언하게 되면, 얕은 복사(shallow copy)가 진행된다.
즉, 배열 내의 요소들이 같은 객체를 가리키게 되는 것이다.
따라서, 이 방식으로 2차원 배열을 선언하고 요소를 변경하게 되면 다른 요소들의 값도 같이 바뀌는 것이다.

 

https://velog.io/@sjy5386/Python-2%EC%B0%A8%EC%9B%90-%EB%B0%B0%EC%97%B4-%EC%84%A0%EC%96%B8%ED%95%98%EA%B8%B0

 

[Python] 2차원 배열 선언하기

Python에서의 1차원 배열 선언 Python에서 1차원 배열을 선언할 때는 다음과 같이 * 연산자를 이용해 간단하게 선언할 수 있다. [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 같은 방식으로 2차원 배열 선언 하지만, 2차원

velog.io

 

'Python' 카테고리의 다른 글

[알고리즘] DFS, BFS 알고리즘  (0) 2024.07.12
[알고리즘] 구현 - 시뮬레이션, 완전탐색  (0) 2024.07.02
[알고리즘] 그리디 알고리즘  (0) 2024.06.29

댓글