sys.stdin.readline()

임승환·2024년 4월 4일

Python

목록 보기
6/20

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

  • 반복문으로 여러 줄 입력 받아야 할 때는 시간 초과가 발생할 수 있기 때문에

sys.stdin.readline() 사용법

한 개의 정수를 입력 받을 때

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

한 줄 단위로 입력 받기 때문에 개행문자가 같이 입력 받아진다

  • 변수 타입이 문자열 형태로 저장된다. 정수로 사용하기 위해서는 형 변환 필요

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

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

a,b,c에 대해 각각 int형으로 형변환

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

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())))

각 요소의 길이가 동일한 2차원 리스트 뿐 아니라 길이가 다른 2차원 리스트도 입력 받을 수 있다!!

문자열 n줄을 입력 받아 리스트에 저장할 때

import sys
n = int(sys.stdin.readline())
data = [sys.stdin.readline().strip() for i in range(n)]

strip() : 앞, 뒤로 공백문자 제거

profile
주니어 개발자

0개의 댓글