본문 바로가기
새롭게 알게된_tech/파이썬_tech

2. 2차원 리스트 입력 받기

by 애플파ol 2022. 1. 19.

●2차원 리스트란? 리스트가 있고 그안에 여러개의 리스트가 존재하는 것이다. ex)[ [  ][  ][  ]...[  ] ]

 

1. 빈리스트를 설정한다

2. for문을 통해 내부에 리스트를 생성한다

3. append() 함수를 사용하여 빈리스트 내부에 2번 과정에서 만든 리스트들을 삽입한다.

 

import sys

list1 = []                         # 빈 리스트를 설정

for i in range(n):                # n의 사이즈에 따라서 반복 횟수 결정됨
    list1.append(list(map(int, sys.stdin.readline().split()))) # 2차원 리스트 입력받기
                                                  # append를 함으로써 빈 list1 내부에 리스트들이 들어가게 됨
                                                  
      # list1.append(list(map(int, input().split())))   와 동일한 문장임

 

 ● input() 대신 sys.stdin.readline() 을 사용하는 이유

     -> 반복문으로 여러줄의 입력을 받을때는 시간 초과가 발생할 수 있기 때문에.

      주의) 문자열의 형태로 받음으로 int형식으로 변환을 위해 형 변환을 사용함(map() 함수 or int 사용)

#------한 개의 정수를 입력받을 때----#

import sys
a = int(sys.stdin.readline())

#-----정해진 개수의 정수를 한줄에 입력받을 때------#

import sys
a,b,c = map(int,sys.stdin.readline().split())

#-----임의의 개수의 정수를 한줄에 입력받아 리스트에 저장할 때----#

import sys
data = list(map(int,sys.stdin.readline().split

#---임의의 개수의 정수를 n줄 입력받아 2차원 리스트에 저장할 때----#

import sys
data = []
n = int(sys.stdin.readline())
for i in range(n):
    data.append(list(map(int,sys.stdin.readline().split())))