[파이썬] sys.stdin.readline()

모선·2022년 11월 23일

Python

목록 보기
2/3
post-thumbnail

백준을 풀다보면 코드에 문제가 없는 것 같은데 시간초과 문제가 뜨는 경우가 있습니다. 그럴 경우, input() 문에서 시간초과 문제가 생겼을 확률이 높습니다.

sys.stdin.readline()

사용자로 데이터 값을 입력받는다는 점에서는 input() 문과 같습니다. 대신 sys.stdin.readline()은 아래 그림처럼 반복문을 이용하여 여러 줄로 값을 입력받아야 할 때 사용합니다.

만약 input()으로 입력받으려고 한다면 저처럼 시간초과의 늪에 빠지게 됩니다....^^

사용 방법

먼저, sys 라이브러리를 import 해줘야합니다.
그리고 input()문을 썼을 때와 똑같이 데이터를 저장할 변수 = sys.stdin.readline() 을 써주면 됩니다.

그리고 input()과 같이 int형, map형, list형 등 다양하게 입력받을 수 있습니다.

import sys
str1 = sys.stdin.readline()
num1 = int(sys.stdin.readline())
num1, num2, num3 = map(int, sys.stdin.readlin().split())

혹은 아래와 같이 사용할 수도 있습니다.

import sys
input = sys.stdin.readline

num1 = int(input())
str1 = input()

input을 sys.stdin.readline 함수로 지정한 것입니다. 굳이 input이 아니어도 a, b, abc 등 원하시는 이름으로 지정할 수 있습니다.

profile
https://hy5sun.tistory.com/ << 이사중

0개의 댓글