Python中如何大写非ASCII词汇

5 投票
2 回答
2508 浏览
提问于 2025-04-15 12:18

在Python中,如何将包含非ASCII字符的单词首字母大写?有没有办法调整stringcapitalize()方法来实现这个功能?

2 个回答

1

capitalize() 这个函数应该可以直接对Unicode字符串起作用。

10

使用Unicode字符串:

# coding: cp1252
print u"é".capitalize()
# Prints É

如果你手上只有一个8位的字符串,先把它解码成Unicode格式:

# coding: cp1252
print "é".decode('cp1252').capitalize()
# Prints É

如果之后你还需要把它变回8位字符串,可以再进行编码:

# coding: cp1252
print "é".decode('cp1252').capitalize().encode('cp1252')
# Prints É (assuming your terminal is happy to receive cp1252)

撰写回答