使用String upper()转换单词对某些字母不起作用?

时间:2016-07-03 01:43:14

标签: python python-2.7 unicode

大家好,我希望你能帮助我解决这个问题,我有几个小时试图解决它

使用此代码:

#!/usr/bin/python
# -*- encoding: utf-8 -*-

frase = 'La canción de la piña'
print frase.upper()

我刚刚收到“LACANCIóNDELAPiñA”,问题是它没有将“ñ”变成“Ñ”或“Ó”中的“ó”

有什么想法吗?

2 个答案:

答案 0 :(得分:6)

使用unicode文字(字符串文字与前导u)来表示unicode字符串:

>>> frase = u'La canción de la piña'
>>> print frase.upper()
LA CANCIÓN DE LA PIÑA

<强>更新

在文件开头添加以下行可启用自动unicode文字。 (在交互式shell中,跟随import语句的语句将受到影响。)

from __future__ import unicode_literals

请参阅__future__ - future statement definitions

答案 1 :(得分:0)

Unicode Literal:

试试这个:

frase =u'Lacancióndelapiña'