2011-02-11 11 views
2

私は(httplib2とlxml.htmlを使用して)いくつかのソースコードから引き出された一部のデータを記述しようとしていますが、私は、データを書き込もうとするたびに私はこのエラーを取得する:のPython 3.2 UnicodeEncodeErrorを

を通じて

UnicodeEncodeError: 'charmap' codec can't encode character '\u012b' in position 505: character maps to <undefined>

プログラム全体で、テキストをうまく印刷できますが、ファイルに書き込もうとするとエラーが発生します。たとえば、次のコードではdefsを印刷できますが、ファイルに書き込もうとすると上記のエラーが発生します。

print(defs) #Good 
f = open(loc+fname+'.txt', 'w') 
f.write(defs) #Bad 
f.close() 

これをファイルに書き込むにはどうすればよいですか?

答えて

4

文字を扱うことができるエンコーディングを指定します。

f = open(loc + fname + '.txt', 'w', encoding='utf-8')