파이썬 숫자를 문자로 - paisseon susjaleul munjalo

Python에서 숫자를 문자로 변환하는 다양한 방법이 있습니다.

1. str()으로 숫자를 문자로 변환

보통 str()으로 Integer를 String으로 변환합니다.

num = 10
print(num)
print(type(num))

num_str = str(num)
print(num_str)
print(type(num_str))

Output:

10
<class 'int'>
10
<class 'str'>

float도 str()으로 변환할 수 있습니다.

num = 10.2
print(num)
print(type(num))

num_str = str(num)
print(num_str)
print(type(num_str))

Output:

10.2
<class 'float'>
10.2
<class 'str'>

2. format()으로 숫자를 문자로 변환

다음과 같이 format()으로 Intger를 String으로 변환할 수도 있습니다.

num = 10
print(num)
print(type(num))

num_str = "{}".format(num)
print(num_str)
print(type(num_str))

Output:

10
<class 'int'>
10
<class 'str'>

float도 Integer처럼 변환이 됩니다.

num = 10.2
print(num)
print(type(num))

num_str = "{}".format(num)
print(num_str)
print(type(num_str))

Output:

10.2
<class 'float'>
10.2
<class 'str'>

3. f-string 으로 숫자를 문자로 변환

f-string으로 Integer를 String으로 변환할 수 있습니다.

num = 10
print(num)
print(type(num))

num_str = f'{num}'
print(num_str)
print(type(num_str))

Output:

10
<class 'int'>
10
<class 'str'>

다른 자료형도 변환이 가능합니다.

num = 10.2
print(num)
print(type(num))

num_str = f'{num}'
print(num_str)
print(type(num_str))

Output:

10.2
<class 'float'>
10.2
<class 'str'>

References

  • RealPython - integers

  • Python - asyncio로 비동기 처리 구현
  • Python - 딕셔너리 필터링, 3가지 방법
  • Python - 파일 이름 변경, 3가지 방법
  • Python - pathlib 실행 파일 경로, 작업 디렉토리 확인, 변경
  • Python - 빈 파일 생성, 3가지 방법
  • Python - 리스트 필터링, 3가지 방법
  • Python 명령행 인자 받기 (argparse)
  • Python - venv로 가상환경 구성 및 설정
  • Python - 싱글턴(Singleton) 패턴, 3가지 방법
  • Python - 리스트 복사 (deep, shallow copy)
  • Python - 리스트 역순으로 순회
  • Python - 객체 리스트 정렬
  • Python - 랜덤 float 생성 방법
  • Python - 패킹(packing), 언패킹(unpacking)
  • Python - 객체를 문자열(string)로 변환
  • Python - 리스트를 튜플로 변환, 3가지 방법
  • Python - 튜플을 리스트로 변환, 4가지 방법
  • Python - sum()으로 딕셔너리 합계 계산
  • Python - 2진수를 10진수로 변환
  • Python - Set 요소 추가, 삭제 방법
  • Python - Set 생성 및 초기화 방법

codechachaCopyright ©2019 codechacha

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


파이썬 숫자를 문자로 - paisseon susjaleul munjalo

프로그래밍을 하다보면 문자열을 숫자로 바꾸거나, 반대로 숫자에서 문자열로 형 변환(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