All Articles

Python - input(), split(), map()

input 함수로 변수에 값 할당하기

input 함수에 입력하는 값은 항상 문자열 형태로 출력된다.

>>> a = input()
10
>>> b = input()
20

a와 b에 각각 10과 20을 할당한 후 a+b 값을 출력해보면

>>> print(a+b)
1020

30이 아닌 1020이 나온다. 10과 20이 숫자가 아닌 문자열로 출력되기 때문이다.

>>> type(a)
<class 'str'>
>>> type(b)
<class 'str'>

문자열 형태로 출력된 숫자를 정수로 바꿀 땐 int()를 사용한다.

>>> a = int(a)
>>> b = int(b)
>>> print(a+b)
30

또는 print 함수 안에서 정수로 변환할 수도 있다.

>>> print(int(a)+int(b))
30

split 함수로 여러 변수에 값 각각 할당하기

한 번에 변수 여러 개에 값을 할당하고 싶을 때 사용한다.

>>> c, d, e = input().split()
1 2 3
>>> print(c, d, e)
1 2 3

map 함수로 코드 간결하게 하기

여러 변수를 할당하고 정수로 변환하기 위해서는 아래처럼 코드가 길게 늘어졌다.

>>> x, y, z = input().split()
50 100 150
>>> x = int(x)
>>> y = int(y)
>>> z = int(z)

map 함수를 사용하면 코드를 훨씬 간결하게 만들 수 있다.

x, y, z = map(int, input().split())
50 100 150

정수가 아닌 실수로 변환하고자 할 때에는 int 자리에 float를 넣어주면 된다.