Python
sys.stdin.readline
leta
2021. 7. 7. 00:13
python에서 입력 받을 때 input() 대신 sys.stdin.readline 사용 => 시간 단축
알고리즘 문제 풀 때 반복문으로 여러 줄을 입력받는 경우 반드시 sys.stdin.readline() 사용하기.
입출력 속도 비교
: sys.stdin.readline > raw_input() > input()
(raw_input()은 파이썬 3.x 부터 없어짐)
ex) num = int(input())
=> num = int(sys.stdin.readline())
사용할 때 import sys 선언해주어야 함.
sys.stdin.readline() #한 라인 입력받을 때
=> 한 줄 단위로 입력받으므로 개행문자도 같이 입력받음 => 개행문자 제거하기.
input()과 마찬가지로 str로 저장되므로 형변환 해줘야 함.
input()처럼 .split() 사용 가능.
sys.stdin() #여러 줄 입력받을 때
ex) for line in sys.stdin:
print(line)
input vs. sys.stdin.readline
- input() 내장함수는 파라미터로 prompt message를 받을 수 있음...
- input() 내장함수는 입력받은 값의 개행 문자를 삭제시켜서 리턴. sys.stdin.readline()은 개행 문자 포함.
=> input()은 sys.stdin.readline()과 달리 prompt message를 출력하고, 개행 문자를 삭제해야 하기 때문에 느림.