前段时间我参加了一门中文研究课程,我认为用python编写一个flashcard程序对我来说是一个很好的练习。我将闪存卡列表存储在.txt文件的字典中,目前为止没有任何问题。当我尝试将用utf-8编码的文件加载到我的程序中时,真正的问题就出现了。我的代码摘录:现在python2.7 - 阅读一个带有unicode的.txt文件的字典
import codecs
f = codecs.open(('list.txt'),'r','utf-8')
quiz_list = eval(f.read())
quizy = str(quiz_list).encode('utf-8')
print quizy
,例如,如果LIST.TXT包括:
{'character1':'男人'}
印什么是真正的
{'character1': '\xe7\x94\xb7\xe7\x86\xb1'}
显然,有一些严重的编码问题在这里,但我不能为我的生活理解这里发生的。我正在使用支持utf-8的终端,因此不是标准的cmd.exe:这不是问题。读取一个没有卷积字典的普通list.txt返回的中文字符没有问题,所以我的猜测是我没有正确处理字典部分。任何想法将不胜感激!
@ephemient谢谢两位!我明白了,显然我应该把我的研究做得更好一些。谢谢你的时间。 – user1058744