2017-07-26 5 views
0
import ast 

dict_from_file=[] 
with open('4.txt', 'r') as inf: 
    dict_from_file = ast.literal_eval(inf.read()) 

File "<unknown>", line 1 
["hello":"work", "please":"work"] 
^
SyntaxError: invalid character in identifier 

こんにちはみんな!上記は私のコードと私のエラーです。私は作業する辞書の形で実際に複雑な40MBのデータファイルがありますが、そのインポートを動作させることができないので、単純なものを試しました。構文辞書を含むテキストファイルをインポートするときのエラー

Windows 10のAnacondaの最新バージョンのJupyterノートブックを使用しています。私の辞書は、Windowsノートパッドを使用して作成されたtxtファイルです。複雑な辞書はもともとJSONファイルだったので、私はtxtファイルに変更したほうが簡単だと思っていましたが、間違いかもしれません。

私は上記のエラーがエンコードの問題だと思いますか?しかし、それを修正する方法がわからない。

ありがとうございます!

+3

はこのお試しください: '輸入JSONを。 dict_from_file = json.load(open( '4.txt'、 'r'、encoding = 'utf-8')) ' –

+0

@cᴏʟᴅsthatこれはエラーメッセージがより良くなるためですか? –

+0

@StefanPochmannはい。 :p –

答えて

0

あなたはファイルの所有者/書き込みされている場合(dictのがフォーマットさ)、JSONとして保存

​​
+0

この場合、 'Pickle'を使うこともできます。あなたのケースに適しているかどうかを判断するには、この受け入れられたanwserを読んでください。https://stackoverflow.com/questions/2259270/pickle-or-json – narn

+0

@narnまた、そこで一番高い答えを読んでください。 –

+0

@Stefan Pochmann井戸ピックルは、浮動小数点数で辞書を持ち、その辞書をPythonでのみ使用する場合にはより良いです。受け入れられたアンサーでは、JSONが相互運用性に適していると述べられています。 – narn

関連する問題