【发布时间】:2014-06-12 20:30:52
【问题描述】:
从文本文件中读取特殊国家字符时,我在 Python 中遇到问题。
with open("../Data/DKsnak.txt") as f:
content = f.readlines()
str1 = content[0]
print "string:",str1
lst1 = str1.split()
print "list:",lst1
输出如下:
string: Udtræk fra observatør på årstal
list: ['Udtr\xc3\xa6k', 'fra', 'observat\xc3\xb8r', 'p\xc3\xa5', '\xc3\xa5rstal']
第一行符合预期,包括特殊的丹麦字符。但是它们无法在被拆分成字符串时幸存下来。 我用编解码器和 unicode 尝试了各种技巧,但找不到灵丹妙药。
请任何人建议我如何将这些单词放入列表中,以便我可以使用它们。
最好的问候 马丁
运行: Python 2.7.5(默认,2014 年 2 月 19 日,13:47:28) [GCC 4.8.2 20131212 (Red Hat 4.8.2-7)] 在 linux2 上
【问题讨论】:
-
试试:
for item in lst1: print(item). -
你没有 unicode,你有一个 字节串。编码字节不是单个字符。
-
您将字符串 representation 与字符串 values 混淆了; Python 为您提供可用于重新创建原始值的表示形式。
标签: python string python-2.7 unicode codec