반응형
반복문 안에서 입력을 받을 때 input()과 sys.stdin.readline()의 시간 차이가 많이 난다고 한다.
그래서 이 두 기능이 어떻게 다른 지 정리해보려고 한다.
우선 참고한 사이트는 아래와 같다.
https://www.geeksforgeeks.org/difference-between-input-and-sys-stdin-readline/
input()
input은 인자로 주어진 문자열을 화면에 출력하고 사용자의 입력을 받기 위해 기다린다.
사용자가 키를 누를 때마다 데이터가 버퍼에 추가된다.
개행문자는 입력의 종료로 생각한다.
무엇을 입력하든 문자열로 변환하고 개행문자를 제거한 뒤 값을 반환한다.
sys.stdin.readline()
화면에 출력하도록 넘기는 파라미터가 없다.
한 번에 읽을 글자 수에 대한 매개변수를 사용할 수 있다.
한 번에 읽어와 버퍼에 저장한다.
이 특성들 때문에 입력이 많아질수록 차이가 더욱 커진다.
대체 방법
import sys
input = sys.stdin.readline
이렇게 상단에 작성하면
input 기능이 sys.stdin.readline으로 대체된다.
반응형
'Studying > Python' 카테고리의 다른 글
[Python] 네이버 영화리뷰 학습 데이터 셋 만들기 (0) | 2022.06.06 |
---|---|
[Python] 웹 크롤링 데이터 클래스를 사용해 구조화해서 접근하기 (0) | 2022.06.06 |
[Python] 웹 크롤링 해보기( 네이버 영화리뷰 크롤링) (0) | 2022.06.06 |
[Python] Closure 설명, 사용 방법 및 예제 (0) | 2022.05.31 |
[Python] 내장함수 sorted 구현 (0) | 2022.05.24 |
댓글