문자를 숫자로, 숫자를 문자로 '변환'하기
프로그래밍을 하다보면 문자열을 숫자로 바꾸거나, 반대로 숫자에서 문자열로 형 변환(casting)을 해야하는 경우가 종종 발생한다.
특히 사용자에게 UI를 통해 입/출력을 제공하는 경우 이러한 형 변환이 자주 사용된다.
파이썬은 동적타입이면서 강타입 언어 특성도 지니고 있는 언어이다.
즉 자료형을 실행 중(런타임)에 결정하면서, 한 번 결정된 자료형은 암묵적인(Implicit) 형 변환을 지원하지 않는다.
그렇기 때문에 만약 파이썬에서 형 변환을 하지 않고 그대로 사용할 경우 다음과 같은 오류가 발생한다.
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
'Programming > Python' 카테고리의 다른 글
[Python] pip 설치 UnicodeDecodeError: 'utf-8' 오류 해결 방법 (0) | 2021.02.01 |
---|---|
[Python] 문자열 구성 판별 함수 정리 (영숫자, 특수문자 검사) (0) | 2021.01.09 |