在Python中使用Ü
大家好,我在用Python 2.7处理Ü这个字符,感觉简直太难了。
我的文件顶部有写# -- coding: utf-8 --。
我有一个列表:
letters = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M',
'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'Ä',
'Ö', 'Ü']
我想做的是:
word = 'FÜNF'
new_string = ''
for letter in word:
new_string += str(letters.index(letter))
但是我遇到了一个错误,提示说字符串里没有这个字母。
如果我这样做:
word = 'FÜNF'
for letter in word:
print letter
我得到的结果是:
F ├ £ N F有没有人能帮我解释一下怎么解决这个问题?提前谢谢大家。
1 个回答
0
你的文件是用utf8编码的。但是你定义了一个字节字符串,所以你的字符串不是4个字节,而是5个字节,因为字母Ü占用了两个字节。要定义一个Unicode字符串,你需要输入
word = u'FÜNF'
这也是你在控制台看到的字母。可能你的控制台无法处理utf8编码。