数字に変えられない文字を変えようとした
ValueError: invalid literal for int() with base 10: '1,200'
ひとことで言うと
「数字ではない文字(カンマや円マークが入ったものなど)を、数字に変えようとしました」という意味です。
よくある原因
"1,200"のようにカンマが入っている- 空っぽの文字や、全角の数字が入っている
自分で確かめること
- 変えようとした文字を
print()で表示して見る
たいていは、こうすると直ります
int(text.replace(",", "")) のように、余分な文字を取り除いてから変えます。
AIへの伝え方
下の文をコピーして、ChatGPT・Claude・Cursor などに貼り付けてください。トップで貼り付けたエラー文があれば、自動でそれに入れかわります。
次のエラーが出て困っています。プログラミング初心者にもわかるように、原因と直し方を教えてください。必要なら、直したコードも全部見せてください。 【エラー】 ValueError: invalid literal for int() with base 10: '1,200' 【やったこと】 (ここに、エラーが出る前にしたことを書く。例:npm run dev を実行した) 【参考】 このエラーは「数字に変えられない文字を変えようとした」というもので、よくある原因は次のとおりです。 ・`"1,200"` のようにカンマが入っている ・空っぽの文字や、全角の数字が入っている どれに当てはまるかを確かめる方法も教えてください。