어디까지 갈 수 있을까?

sys.stdin.readline 오류, input 오류 본문

프로그래밍/파이썬

sys.stdin.readline 오류, input 오류

_Min 2021. 2. 14. 11:13

[해결방법]

 

invalid literal for int() with base 10: '\n' 오류 메시지가 난다면

1
2
3
4
import sys
input=sys.stdin.readline
 
a=input().rstrip()
cs

이와 같이 끝에 rstrip()를 붙여주면 된다

 

 

[이유]

1
2
3
4
5
6
import sys
input=sys.stdin.readline
 
a=input()
print(a)
print('b')
cs

 

프로그램을 돌리면 위와 같이 enter가 한 번 더 추가적으로 들어간다

그 이유는 sys.stdin.readline은 우리가 입력한 값을 모두 받기 때문에

문자열에 끝에 입력한 개행문자 (\n)도 같이 받는다.

 

이 때문에 끝에 rstrip()를 붙여주면 개행문자가 제거돼 정상적으로 사용할 수 있다

728x90
Comments