백준 11718번 그대로 출력하기
문제
최대 100줄의 입력이 주어진다. 각 줄은 알파벳 대소문자, 공백, 숫자로만 이루어져 있고 100글자를 넘지 않으며, 빈 줄은 없다. 또 각 줄은 공백으로 시작하거나 끝나지 않는다. 입력받은 내용을 그대로 출력한다.
풀이
입력이 몇 줄인지 알 수 없으므로 while True로 반복하며 한 줄씩 읽어 출력한다. 더 읽을 입력이 없으면 input()이 EOFError를 발생시키므로 try/except로 잡아 반복을 끝낸다.
# 값이 얼마나 들어올지 모르니, while문 사용
while True:
try:
word = input()
# 입력이 더이상 없다면 break
if not word:
break
print(word)
# 입력이 더이상 없다면 break
except EOFError:
break짚고 갈 점
EOFError는 End of File Error의 약자로, 입력 소스(파일, 표준 입력 등)에서 더 읽을 데이터가 없을 때 발생하는 파이썬 예외다. 파일의 끝에 도달했거나 입력이 더 이상 없는 상태에서 읽으려 할 때 발생한다.