在一個文本文件(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