2차원 배열에 배열 선언

Nitroblue 1·2025년 9월 9일

코딩 스킬들

목록 보기
10/17
for i in range(n):
        for j in range(n):
            next_grid[i][j] = list()

유용하게 쓰일 것 같다.


만약 인덱스를 맞추기 위해 0th index에 더미값을 넣고 싶다면?

0번에 더미로 빈 리스트를 두고 싶으면 이렇게 넣으면 돼요.

for i in range(n):
    for j in range(n):
        next_grid[i][j] = [[]]          # 0번째 원소가 []인 리스트가 됨
        # (동일) next_grid[i][j] = list(); next_grid[i][j].append([])

만약 “1부터 m까지”도 미리 비워 두고 싶다면 각각 다른 리스트로 채워야 하니 comprehension을 쓰세요(곱셈 금지!):

m = 10  # 예시
for i in range(n):
    for j in range(n):
        next_grid[i][j] = [[] for _ in range(m+1)]  # 0~m까지 전부 독립적인 빈 리스트

주의: next_grid[i][j] = [[]] * (m+1) 는 같은 리스트를 복제해 참조하므로 나중에 한 곳을 수정하면 전부 같이 바뀝니다.

0개의 댓글