could not convert string to float: 44.82
読み込んだデータをfloatするコードを書いたところ、上記のようなエラーが出ました。
エラー部分にかかれている通り変換しようとしているのは既に小数として読み込めるstrだと思うのですが、
これでなぜエラーになるのでしょうか?
どなたかご存知の方がいらっしゃればお教えいただけませんでしょうか?
よろしくお願い致します。
コードが書かれてないので、何かを間違っているのでしょうとしか言いようが無いです。
制御文字か全角が入っていませんか?
ご回答ありがとうございます。
コードを追記させていただきます。制御文字や全角は入っていないのではないかと思われます。
nation=["us","ca","de","fr","it","es","cn"]
for n in nation:
exec("%s = float(%s.replace(u'CDN$','').replace(u'$','').replace(u'£','').replace(u'EUR','').replace(u'¥','').replace(u',','.').replace(u' ',''))" % (n,n))
長くなるので各nを定義する部分は省略しておりますが、£44.82のような単位つきの数字が定義されるとお考えください。
いやここは回答を書くところではありません。情報が少なすぎて原因が特定できないのでもっと詳しく書いてくださいという意味です。エラーは目で見て書き写すのではなくコピペしてください。処理する前のデータももう少し大きな範囲でコピペしてください。エラー周辺のコードもコピペしてください。
質問の仕方が分かりづらく大変失礼致しました。こちらですが、エンコードエラーではないかと思い、.encode('utf-8')を行ったところ解決しました。お騒がせ致しました。ご回答いただいた皆様ありがとうございます。次回からは質問の仕方にも気をつけて投稿させていただきます。
回答1件
あなたの回答
tips
プレビュー