You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python入门:如何仅大写字符串首字母且不修改其余字符?

解决字符串仅首字母大写、其余内容保留原格式的问题

你遇到的问题根源在于str.capitalize()方法的特性:它会将字符串第一个字符转为大写,同时把剩余所有字符统一转为小写,这就是原字符串里的"Smith"变成"smith"的原因。

要实现仅大写首字母且不改动其余部分,有以下几种简单可行的方案:

方案1:字符串切片拼接(通用首选)

直接提取首字母转为大写,再拼接原字符串从第二个字符开始的所有内容,完全保留后续字符的原有格式:

name = "john Smith"
# 先判断字符串非空且首字母小写,避免空字符串索引报错
if name and name[0].islower():
    name = name[0].upper() + name[1:]
print(name)  # 输出:John Smith

方案2:指定次数替换(仅适用于首字母明确的场景)

如果确定首字母是特定的小写字符,比如这里的"j",可以用限定替换次数的方式修改:

name = "john Smith"
if name.startswith("j"):
    name = name.replace("j", "J", 1)  # 只替换第一个匹配的字符
print(name)  # 输出:John Smith

注意:方案2仅当你明确知道首字母具体是什么时适用,方案1则是通用解法,不管首字母是哪个小写字母都能处理。

内容的提问来源于stack exchange,提问作者PSA1721

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 18:06:17