在Python中使用Ü

0 投票
1 回答
855 浏览
提问于 2025-04-30 11:11

大家好,我在用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编码。

撰写回答