在一个文本文件(test.txt的),我的字符串看起来是这样的:Python文件输入字符串:如何处理转义的Unicode字符?
Gro\u00DFbritannien
读它,蟒蛇逃出反斜线:
>>> file = open('test.txt', 'r')
>>> input = file.readline()
>>> input
'Gro\\u00DFbritannien'
我怎么能有这样的解释为Unicode? decode()
和unicode()
不会做这项工作。
下面的代码将Gro\u00DFbritannien
回文件,但我希望它是Großbritannien
>>> input.decode('latin-1')
u'Gro\\u00DFbritannien'
>>> out = codecs.open('out.txt', 'w', 'utf-8')
>>> out.write(input)
如果您想将Python unicode对象序列化为文件,为什么不尝试使用'cPickle'模块? – rlotun 2010-05-11 13:47:18
该数据来自http://downloads.dbpedia.org/3.5.1/de/persondata_de.nt.bz2 使用Python 2.6 – Michi 2010-05-11 14:11:28