문제
https://www.acmicpc.net/problem/11718
입력 받은 문자열을 그대로 출력하는 프로그램을 작성하라.
입력은 최대 100줄이며, 한 줄은 알파뱃, 숫자, 공백으로만 이루어져 있다.
각 줄은 100글자를 넘지 않으며, 빈 줄은 주어지지 않는다. 또한 각 줄은 공백으로 시작하지 않고, 공백으로 끝나지 않는다.
풀이
임의의 여러 줄을 입력받아 처리하는 문제이다.
내 풀이
빈 줄이 주어지지 않는다는 점을 이용하여 입력이 공백인 경우, 입력의 끝이라고 간주한다.
import sys
while True:
i = sys.stdin.readline()[:-1] # 개행문자('\n') 제거
if i == "":
exit()
print(i)
다른 풀이
예외 처리를 이용한다.
import sys
while True:
try:
print(input())
except EOFError:
exit()
EOFError
파일의 끝(End Of File)을 입력 받았을 때 발생하는 에러
터미널에서의 키보드 입력 Ctrl+D가 EOF에 해당한다.