で:とValueError:フロートのための無効なリテラル()はPython
誰かが私がエラーを理解するのに役立つことができれば、私は好奇心がありますとValueError:フロートのための無効なリテラル()。テキストファイルをリストに渡してから、このリストを浮動小数点値に変換しようとしているときに、これを取得しています。
print repr(lines[0])
を私が手::
「0.000 \ t0.000 ... \ t0.000 \ T0を、少なくとも私には、奇妙である何
はa = open("input.txt","r")
lines = a.readlines()
b = map(float, lines)
私が処理するときということです.000 \ n」は
と
print type(lines[0])
私が手:
<type 'str'>
マップ(フロート、ライン)が正しく動作しない理由はわかりません。私はこの機能を間違って使用していますか?ドキュメントを見ると、map関数はmap(function、iterable、...)として与えられます。リストは反復可能ではありませんか?
また、誰かがこのエラーを説明できる場合は、このエラーの説明の方向に私を指摘していただければ幸いです。
この質問のお手伝いをしていただきありがとうございます。
をあなたは '0.000 \ t0.000ことを言っている... \ t0の.000 \ n'はすべて1行ですか?もしそうなら、私はそれが 'float()'に渡されていると仮定し、変換することはできません。個々のフロート値に分割する必要があるようです。それは事実ですか? – eldarerathis
@eldarerathisはい、それはすべて1行ですが、処理すると特定の数の値を通過するように見えるので、エラーが発生します: ValueError:float()のリテラルが無効です:0.000 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t。000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0.000 \t 0ですが、実際にはありませんそれは値を通って作るのですか? – geop
これは上記の文字列のように見えますが、 '\ t 'は空白(つまり実際のタブ文字)として表示されます。それはすべての文字列リテラルであり、短いものではありません。私は推測しています。 – eldarerathis