ValueError: invalid literal for int() with base 10: の原因と対処

スポンサーリンク

カテゴリ:Python
Python バージョン:Python2.7
Tensorflowバージョン:Tnsorflow 1.0
OSバージョン:Ubuntu 16.04.2


現象


Python で以下のエラーが発生する場合があります。

ValueError: invalid literal for int() with base 10:


原因



10進数に変換できない文字をint型に変換しようとしたのが原因です。



>>> int("10")
10



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



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


対策


参考:16進数、8進数、2進数の場合は指定して変換可能します。


>>> int("0xFF" ,16)
255



>>> int("0o11" ,8)
9



>>> int("0b10101010101" ,2)
1365



スポンサーリンク

[Tensorflow FAQ]

[Tensorflow トップへ]


このページは独学で学習した結果をメモした結果です。内容に不備・誤りがある可能性があります。 また今後仕様が変更となり記述が不正確になる可能性もあります。あくまでも自己責任で本ページを参考にしてください。 本サイト内掲載されている情報は、著作権法により保護されています。いかなる場合でも権利者の許可なくコピー、配布することはできません。