-
백준 1000번 (입력)백준 with Python 2022. 12. 20. 16:52
기본문제라 다음과 같이 코드를 작성하고 넘어가려고 했다.
A=int(input())B=int(input())print(A+B)하지만 런타임에러가 발생했고 원인을 찾아보니 파이썬은 C와 달리 입력을 띄어쓰기로 하는 것과 두 줄로 나누어 하는 것이 달랐다.
ex) 1 2
입력과
1
2
입력을 서로 다르게 받아야 한다.
A, B=input().split()print(int(A)+int(B))위와 같이 적으면 문자열을 받아서 A와 B에 각각 넣어주고 그것을 정수화해서 더한 후 출력하면 된다.
A, B= map(int, input().split())print(A+B)위와 같이 더 깔끔하게 작성할 수 있다.
input() : 문자열을 입력받는 함수
정수형을 받기 위해서는 먼저 input()으로 받은 후 int()로 변환해 주어야 한다.
input('a= ')과 같이 입력을 도와주는 인터페이스도 만들 수 있다.
.split() : 띄어쓰기를 기준으로 나누어 주는 함수
ex) a='hello world' -> a.split() -> a=['hello', 'world']
input().split() : 문자열을 입력받아 나누어 준다.
map() : 입력한 자료형에 입력된 함수를 각각 전부 다 적용한다.
ex) A, B= map(int, ['12', '34'])
>>
A=12
B=34
map( int, input().split() ) : 문자열을 입력받아 나눈 후 정수형으로 변환해준다.
** int( input().split() )은 안되나요?
split으로 나누어지면 리스트가 되는데 int는 리스트를 한번에 정수형으로 변환할 수 없다.
'백준 with Python' 카테고리의 다른 글
백준 2530번: 인공지능 시계 (0) 2022.12.21 백준 10699번 (import 모듈과 날짜) (0) 2022.12.21 백준 11021번 (f-string) (0) 2022.12.20 백준 2588번 (문자열 나누기) (0) 2022.12.20 백준 10869번 (몫과 나머지) (0) 2022.12.20