Error code 모음/4. Python errors

파이썬 에러: ValueError: invalid literal for int() with base10: '4.3'

쟈누이 2020. 2. 29. 15:28
반응형

우선 파이썬을 다시 복습하면서. 나오는 에러들은 기본적으로 정리를 해야겟다고 생각이 든다

특히 기본적으로 형변환을 할 때 가장 많이 만나는 에러인 

 

"ValueError: invalid literal for int() with base10: " 에러인데

 

해당 에러는 

int(), float(), str(). boolean() 등에서 원하는 형이 들어오지 않았을 때 에러를 알려준다

 

>>> e = '7.23'

>>> type(e)
<class 'str'>

>>> int(e)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '7.23'

 

변수 'e' 에는 실수 '문자열'을 넣어주었다 

type()을 통해 'e'는 문자열인 것을 바로 확인 할 수가 있는데.

 

형 변환이 맞지 않는 것을 사용하여 이렇게 나온다 

실수 문자열을 바로 int 에 넣어주었기 때문인데...

일반 실수를 int 로 형을 바꾸어 주면 바로 적용이 되지만,

>>> e= 7.23
>>> int(e)
7

하지만, 위에 e 는 '문자열'이 포함된 실수이기 때문에 바로 int 로 변형이 어려워 위의 형변환 에러가 뜨는 것이다.

이를 int 로 바꾸기 위해서는 

>>> e = '7.23'

>>> type(e)
<class 'str'>

>>> b = float(e)

>>> type(b)
<class 'float'>

>>> int(b)
7

실수 문자열을 먼저 float 형으로 바구어주고 그 다음에 int 로 바꾸어주어야 한다.

 

위 에러는 형 변환에 문제가 발생하여 생기는 에러이니 잘 참고해두자

 

자세한 사항은 한주현님의 블로그에서 다시 한번 확인 할 수 있다.

https://korbillgates.tistory.com/94

 

[파이썬] 파이썬 에러 ValueError: invalid literal for int() with base10: '4.3'

안녕하세요 한주현입니다. 오늘은 파이썬 형변환에서 발생하는 오류인 ValueError: invalid literal for int() with base 10: '4.3' 에 대하여 알아보겠습니다. 파이썬에서는 형변환이 간단합니다. 문자형으로 바..

korbillgates.tistory.com

 

반응형