본문 바로가기
Python/python 기초

Python 기초: 문자열과 숫자의 형식 변환

by 철이88 2022. 10. 30.
반응형

Python에서 변수에 저장할 수 있는 대표적인 데이터 형식은 문자와 숫자입니다. 이번 포스팅에서는 str(), int(), float() 함수를 이용하여 문자와 숫자 간의 데이터 형식 변환을 해보겠습니다.

1. 문자와 숫자의 변수 할당 방법


문자열은 글자, 공백, 특수 기호 등을 포함하는 데이터 형식인데 반해, 숫자는 수학 연산을 할 수 있는 데이터입니다. 숫자는 정수와 부동소수점 실수로 나뉩니다.

문자열과 숫자를 변수에 할당하는 방법은 다음과 같이 따옴표의 유무로 구별할 수 있습니다.

data_str = 'string'
data_num = 7


Python에서는 정수와 부동소수점 실수를 따로 선언하지 않고 사용이 가능합니다.
즉, 위의 예에서 아래와 같이 실수 데이터를 할당할 수 있습니다.

data_num = 7.7


또한 중요한 것은 숫자를 문자열로 할당할 수 있다는 것입니다. (아래 예)

your_iphone_version = '14'

그래서 이 변수에 할당된 데이터는 일반적인 수학 연산을 할 수 없습니다.

다음 예를 실행하면 42가 아니라 141414가 출력되는 것을 볼 수 있습니다.

your_iphone_version = '14'
print(your_iphone_version * 3)

 

2. str() 함수


문자열은 다른 문자열과 합칠 수 있습니다.


예를 들면,  

print('I am ' + 'python.')


하지만 다음과 같이 숫자 데이터와 합치면 에러가 발생합니다.

print('I am ' + 'python.' + 3.11)


변수도 마찬가지로 문자열 변수와 숫자 변수를 합칠 수 없는데,

이럴 경우 str() 함수를 이용해 숫자 변수를 문자열로 변환하면 합칠 수 있습니다.

str() 함수의 사용법은 다음과 같습니다.

version = '3.11'
print('I am python ' + str(version) + '.')


또는 format()함수를 이용해서 (Python 기초: Print 함수 포맷 사용하기 참조)

version = '3.11'
print('I am python {}.'.format(str(version)))



3. int() 함수와 float()함수


위의 경우와는 반대로, 
숫자로 된 문자열 데이터는 int() 와 float() 함수를 이용해 수학 연산이 가능한 숫자 형식으로 변환할 수 있습니다.  

그 예로 다음 코드를 보시기 바랍니다.

age = '25'
print(int(age) * 2)


int()함수는 정수로 변환하는데 다음과 같은 소수점이 있는 '문자열'의 경우는 에러를 발생합니다.

age = '25.5'
print(int(age) * 2)


소수점이 있는 숫자 문자열은 float()함수로 변환하면 됩니다.

age = '25.5'
print(float(age) * 2)


단, 다음과 같이 정수 문자열을 float()으로 변환하면 소수점이 생기는 것을 인지하시기 바랍니다.

print(float('25'))



4. input() 함수: 문자열로 변수에 할당


input() 함수를 이용하면 사용자에게 데이터를 입력 받아 변수에 할당할 수 있습니다.
이때 입력 받은 데이터는 문자열 형식으로 저장됨을 기억하시기 바랍니다.

다음 예들을 실행해서 숫자를 입력해 보면 차이점을 확인할 수 있습니다.

datain = input('Typr anything: ')
my_data = datain * 3
print(my_data)

또는

datain = input('Typr anything: ')
my_data = float(datain) * 3
print(my_data)


다음 포스팅은 수학 연산에 대한 내용입니다.
아래 링크를 참조하세요.

Python 기초: 수학 연산

 

Python 기초: 수학 연산

이번 포스팅은 python에서의 사칙 연산과 나머지, 지수 등 수학 연산에 관해 알아보겠습니다. 1. 수학 연산 기호 다음 표는 python에서의 수학 연산 기호를 정리한 것입니다. 연산 방법은 아래와 같

er5030000.tistory.com

 

반응형

댓글