CS/Python
[파이썬] 이중 리스트 초기화 방법
연수구 주정뱅이
2021. 8. 18. 17:12
이중 리스트를 사용할 일이 많다. 코딩 테스트라던지, 텐서라던지.
파이썬에서 이중 리스트를 초기화 및 입력받는 방법을 알아보자.
여러 방법이 있지만, 가장 간결한 방법만을 소개하겠다.
arr = [[1,2,3],[4,5,6]] 이라고 할 때, 이를 보기 쉽게 표현하자면
[
[1, 2, 3],
[4, 5, 6]
]
으로 표현할 수 있다.
arr[0] = [1, 2, 3]이고,
arr[1] = [4, 5, 6]이다.
결국 총 2행 3열의 리스트를 만들고 싶을 때에는
arr = [ [0 for col in range(2)] for row in range(3) ]
이다.
[ 0, 0 ] 으로 이루어진 (col의 개수만큼 요소가 있는) 1차원 리스트를 row 개수만큼 만들어 2차원 리스트에 저장한다.
입력을 받을 때에는
N = int(input())
arr = [list(map(int, input().split())) for row in range(N)]
print(arr)
# 입력
# 3
# 1 2 3
# 4 5 6
# 7 8 9
# 출력
# [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
이런 식으로 입력받을 수 있다.
이중 리스트의 길이는
arr = [ [1, 2, 3], [4, 5, 6] ]
print(len(arr)) # 이중 리스트 안의 1차원 리스트의 개수이므로 2
print(len(arr[0])) # 이중 리스트 안의 1차원 리스트의 길이이므로 3
Reference: 2차원 리스트 생성