Python 中如何把字符串转成大写或小写?

Python 大小写转换:upper() 转大写、lower() 转小写、capitalize() 首字母大写、title() 每个单词首字母大写、casefold() 更彻底的小写比较。本文汇总各种方法。

最佳实践
Python 中如何把字符串转成大写或小写?封面

转大写用 s.upper(),转小写用 s.lower()。两者都返回新字符串,不修改原字符串。

常用方法一览

s = "hello world"

s.upper()       # "HELLO WORLD"——全部大写
s.lower()       # "hello world"——全部小写
s.capitalize()  # "Hello world"——仅首字符大写,其余小写
s.title()       # "Hello World"——每个单词首字母大写
s.swapcase()    # "HELLO WORLD"——大小写互换

大小写不敏感的比较

不要直接 s1.lower() == s2.lower(),推荐 casefold()——它对 Unicode 的处理更彻底(如德语 ß 会被转成 ss):

"Straße".casefold() == "STRASSE".casefold()  # True

判断当前大小写

"ABC".isupper()  # True
"abc".islower()  # True

常见问题(FAQ)

Q:upper() 会修改原字符串吗?
A:不会。字符串不可变,所有转换方法都返回新字符串。

Q:只想让句首大写用什么?
A:s.capitalize()——注意它会把其他字母都变小写,"hELLO".capitalize() 得到 "Hello"

Q:title() 处理缩写有问题吗?
A:有。"they're".title() 得到 "They'Re"——它把撇号当单词边界。对文本质量要求高时用正则或 nltk 等库。

获取专属方案

联系我们

加入社区

微信扫码
加入官方交流群

立即体验

在线开通,按量计费,真正的云服务!

立即开始

选择观测云版本

代码托管平台