개발자/파이썬 Python

ValueError: Unknown format code 'f' for object of type 'str'

지구빵집 2020. 11. 7. 20:28
반응형

 

 

ValueError: Unknown format code 'f' for object of type 'str' 에러가 날 때는 대부분 Type 에러다.

 

파이선 print 에서 format을 사용하여 프린트 문을 인쇄할 때 발생하는 에러다. 이 오류 메시지는 부동 소숫점값을 알려주는 :f 형식 지정자를 사용하여 문자열을 인쇄하려는 것을 알려준다. 예를 들면,

 

>>> print("{:f}".format(1.234))
1.234000

 

이런 경우 format( ) 메서드에 제공된 인수는 소숫점 값이므로 제대로 동작한다. 그러나 아래의 코드가 실행되고 에러를 보면 

 

>>> print("{:f}".format("1.234"))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: Unknown format code 'f' for object of type 'str'

 

파이썬은 format ()에 대한 인자가 부동 소수점 값이 아니라 문자열이기 때문에 값에 대한 에러를 뱉어낸다. 이것을 해결하는 코드는 아래에 있으며 잘 동작한다.

 

>>> s = "1.234"
>>> print("{:f}".format(float(s)))
1.234000

 

 

 

 

 

 

 

 

 

 

 

 

반응형