2011-02-11 64 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')