반응형

문자를 숫자로, 숫자를 문자로 '변환'하기


프로그래밍을 하다보면 문자열을 숫자로 바꾸거나, 반대로 숫자에서 문자열로 형 변환(casting)을 해야하는 경우가 종종 발생한다.

 

특히 사용자에게 UI를 통해 입/출력을 제공하는 경우 이러한 형 변환이 자주 사용된다.

 

파이썬은 동적타입이면서 강타입 언어 특성도 지니고 있는 언어이다.

즉 자료형을 실행 중(런타임)에 결정하면서, 한 번 결정된 자료형은 암묵적인(Implicit) 형 변환을 지원하지 않는다.

 

그렇기 때문에 만약 파이썬에서 형 변환을 하지 않고 그대로 사용할 경우 다음과 같은 오류가 발생한다.

728x90

1) 문자(str)를 숫자(int)처럼 사용할 경우

total = 0
count = input()
total += count
TypeError: unsupported operand type(s) for +=: 'int' and 'str'

 

2) 숫자(int)를 문자(str)처럼 사용할 경우

count = 10
print("count: " + count)
TypeError: must be str, not int

 

그럼 위와 같은 오류가 발생하지 않도록

파이썬에서 숫자를 문자열로 그리고 문자열을 숫자로 변환하는 방법에 대해 알아보자.

 

문자를 숫자로 변환 - int()


기본적으로 파이썬에서는 형 변환을 하려면 생성자 함수를 사용하면 간편하다.

파이썬에서 문자열을 숫자로 변환하려면 int() 함수를 사용하면 된다.

 

숫자 = int(문자열)

total = 0
count = input()
total += int(count)
print("total: " + str(total))
10
total: 10

 

숫자를 문자로 변환 - str()


반대로, 파이썬에서 숫자를 문자열로 변환하려면 str() 함수를 사용하면 된다.

 

문자열 = str(숫자)

count = 10
print("count: " + str(count))
count: 10

 

반응형

+ Recent posts