1
2
3
4
5
6
7
|
a,b = input().split()
print(a + b)
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
10 20
1020
Process finished with exit code 0
|
cs |
숫자 두 개를 입력받고 그 수를 더해서 출력을 하고 싶은데,
input을 써서 받고 그냥 더해버리면 위의 코드처럼 10 + 20이 1020이 되어버린다
기적의 계산법
왜 그러냐면 input은 입력받고 string의 형태로 저장한다.
그래서 더하기를 시켜주면 문자열 + 문자열의 형태로 출력이된다.
따라서 우리는 적절하게 캐스팅을 시켜줘야한다.
1
2
3
4
5
6
7
8
9
|
a,b = input().split()
a = int(a)
b = int(b)
print(a + b)
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
10 20
30
Process finished with exit code 0
|
cs |
이렇게 하나하나 바꿔서 해 줄 수도 있지만,
1
2
3
4
5
6
7
|
a, b = map(int, input().split())
print(a + b)
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
10 20
30
Process finished with exit code 0
|
cs |
위처럼 map을 이용해 한번에 바꿔서 캐스팅 할 수도 있다.
아 추가적으로, 하나를 입력받을 때 바로 캐스팅 하는 방법은
1
|
a = int(input())
|
cs |
위 처럼 해 주면 된다. 간단하다.
'언어 > python3' 카테고리의 다른 글
파이썬 | for문과 print문 사용 시, 줄바꿈을 안하고 싶을때 (0) | 2020.03.15 |
---|---|
파이썬 | 입력을 받고 바로 리스트에 집어넣어 보자. (0) | 2020.03.15 |
파이썬 | 입력을 더 빠르게 받아보자. (0) | 2020.03.15 |
파이썬 | 정수와 문자열 함께 출력하기 (0) | 2020.03.15 |
파이썬 | input()으로 입력 값 여러개 동시에 받기 (0) | 2020.03.14 |
댓글