Please Enable JavaScript!
Gon[ Enable JavaScript ]

파이썬(Python) 문자를 숫자로 변환해서 숫자에 더하는 방법

파이썬 Python

파이썬(Python) 문자를 숫자로 변환해서 숫자에 더하는 방법

 

환경: PyCharm

 

파이썬은 문자와 숫자를 “+” 연산자로 더할 수 없습니다. 어떤 프로그램 언어에서는 문자와 숫자를 더할 경우 문자로 자동 변환한 뒤 합칠 수 있습니다. 파이썬은 같은 자료형으로 만들어서 더해야 합니다. 또한 변환할 데이터가 실수 인데 정수 변환 함수인 int() 를 사용하면 에러가 발생합니다. 다른 언어에서는 정수 변환 함수에 실수를 넣으면 소수점은 잘라내고 정수값을 반환하지만 파이썬은 int() 대신 float() 를 사용해야 합니다.

 

그림처럼 문자열이 저장된 변수 a 와 숫자가 저장된 b “+” 연산자를 사용해서 합칠 수 없습니다.

파이썬(Python) 문자를 숫자로 변환해서 숫자에 더하는 방법

 

에러 없이 합치기 위해서는 동일한 자료형으로 만들어야 합니다. int() 함수를 이용해서 a 에 저장된 문자열을 숫자로 바꾼 후 더해 보세요. 에러없이 예상했던 결과값을 얻을 수 있습니다.

 

a = "100"

b = 100

s = int(a)

 

print(b + s) # 결과 200

 

참고로 int() 같은 형 변환 함수는 문자열을 숫자로 변환할 때 공백이 있어도 상관없습니다. 무의미한 공백을 제거하고 숫자로 변환해 줍니다.

 

a = " 100  "

b = 100

s = int(a)

 

print(b + s) # 결과 200

 

만약 변환할 데이터가 실수라면 int() 함수를 사용해서는 안됩니다. 다른 언어에서는 정수 변환 함수에 실수를 넣으면 소수점은 잘라내고 정수값을 반환합니다. 하지만 파이썬은 정확하게 입력해야 합니다. 실수로 변환할 문자열이라면 int() 대신 float() 사용해야 합니다.

 

a = "100.213"

b = 100

s = int(a)

 

print(b + s) # 에러 invalid literal for int() with base

파이썬(Python) 문자를 숫자로 변환해서 숫자에 더하는 방법

 

float() 함수를 사용해서 a 문자열 데이터를 변환한 후 더해 보세요. 제대로 된 결과값을 얻을 수 있습니다.

 

a = "100.213"

b = 100

s = float(a)

 

print(b + s) # 결과 200.213


Posted by 녹두장군

댓글을 달아 주세요