IT일지/파이썬

[파이썬 에러] ValueError invalid literal for int() with base 10 해결하기

체험가 2024. 1. 21. 15:07
반응형

문제상황

 

ValueError: invalid literal for int() with base 10: '+5.967'

 

문자열 '+5.967'을 담고 있는 num 변수를 int로 변환하려고 할 때 생긴 에러입니다.

문자열에 소수점이 없다면 정상적으로 int형으로 변환이 되었을 상황이지만 소수점이 있어서 ValueError가 발생했네요


해결방법

소수점이 있는 문자열을 숫자 형태로 바꿔주기 위해서는

3번째 줄 처럼 num에 float을 씌운 다음 다시 int로 감싸주면 '+5.967' 이 정수 5로 변환되는 것을 확인 할 수 있습니다.

2번째 줄 처럼 float만 하면 실수 값인 5.697을 얻을 수 있습니다.


만약 소수점 3번째 자리에서 반올림을 하여 소수점 2번째 까지만 표시하고 싶다면 

round(실수값, 표시할 자리)

를 하면 됩니다.

 

728x90
반응형