파이썬에서 값을 입력받는 다양한 방법에 대해 알아본다
1. input()
print(input()) # 결과: 마지막 개행문자를 제외한 라인 전체
input()은 파이썬에서 사용자 입력을 받기 위한 가장 기본적인 함수이다. 기본적으로 line 단위로 입력을 받는 함수이며
입력받은 내용을 마지막의 개행문자를 제거한 문자열의 형태로 반환한다. EOF를 읽을 경우 EOFError를 발생시킨다.
인자로 문자열을 넘겨줄 경우 개행없이 출력해준다.(prompt)
2. sys.stdin.readline()
import sys
input = sys.stdin.readline()
print(input()) # 결과: 마지막의 개행문자를 포함한 라인 전체
sys.stdin.readline()은 input()과 마찬가지로 사용자 입력을 line 단위로 받을 수 있는 함수이다. input()과 다른 점은
마지막 개행문자를 제거해주지 않으며 prompt 매개변수를 받지 않는다는것, 그리고 EOF를 만났을때 EOFError를
발생시키지 않고 빈 문자열을 반환한다는 점이다.
많은 양의 입력을 처리해야 할 때 sys.stdin에 정의된 함수들은 사용자 입력을 받아오기 위한 버퍼를 생성하여
입력을 처리하기에 내장함수 input을 사용하는 것 보다 매우 빠른 속도를 보인다.
3. sys.stdin.readlines()
import sys
input = sys.stdin.read()
s = input()
sys.stdin.readlines()는 입력을 line 단위로 끊어 리스트의 형태로 반환하는 함수이다. readline 함수를 여러번 호출하여 리스트에 집어넣은 것과 같다.
4. sys.stdin.read()
import sys
input = sys.stdin.read()
s = input()
sys.stdin.read()는 EOF를 만나기 전까지 모든 입력을 하나의 문자열로 반환하는 함수이다.
'언어 > Python' 카테고리의 다른 글
#11 흐름제어 (조건문, 반복문) (0) | 2021.05.27 |
---|---|
#10 특수한 매개변수 (0) | 2021.05.26 |
#8 우선순위 큐(heapq) (0) | 2021.04.05 |
#7 데크(deque) (0) | 2021.04.05 |
#6 재귀 제한(recursion limit) (0) | 2021.04.05 |