python - 为什么 Python 大写特殊字符不用 upper()?

标签 python unicode

我不明白:

'ô TRAM'.upper() != 'Ô TRAM'
'ô TRAM'.upper() == 'ô TRAM'

当我们请求大写时,所有文本编辑器(包括 vimemacs)都会将 'ô TRAM'.upper() 转换为 'Ô TRAM'。为什么 Python 似乎只大写 [a-zA-Z] 字符?解决方法是什么?

最佳答案

在默认使用 Unicode 的 Python 3 中,它应该可以工作。

在 Python 2 中,你必须强制执行它,这样就可以了:

u'ô TRAM'.upper()

u 阻止将文本转换为 ASCII。 (保留为 unicode)

关于python - 为什么 Python 大写特殊字符不用 upper()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15494142/

相关文章:

python-docx: 添加来自网络的图片

python - memcached 中的 Scrapy http 缓存存储

php - 是否有易于使用且支持 unicode 的 PHP PDF 库?

javascript - 如何使用正则表达式在 javascript 中链接 unicode 数字

python - Unicode(西里尔文)字符索引,用 python 重写

python - 为什么在使用 NonlinearBlockGS 求解器的耦合组中,第一个组件的输出没有直接传递到第二个组件的输入?

Python IDLE 相当于 R 中的 CTRL-R

python - 使用 h5py 从大文件读取而不将整个文件加载到内存中

python - Unicode 字符无法在终端 python 中正确打印

unicode - 什么 LaTeX 命令会创建一个破折号?