将字符串的第一个字母大写,而不接触其他字母

Res*_*eid 11 python string capitalize

我想将字符串的第一个字母大写,但保留其余字母

我有:racEcar

我想要什么:赛车

Mar*_*ers 9

然后只需将第一个字母大写str.upper()并连接其余字母不变

string[0].upper() + string[1:]
Run Code Online (Sandbox Code Playgroud)

演示:

>>> string = 'racEcar'
>>> string[0].upper() + string[1:]
'RacEcar'
Run Code Online (Sandbox Code Playgroud)


Aar*_*all 8

您应该像 Martijn 建议的那样,但为了使您的函数更加健壮,请切片到第一个字母,这样您就不会在空字符串上出错:

>>> rc = 'racEcar'
>>> newrc = rc[:1].upper() + rc[1:]
>>> newrc
'RacEcar'
Run Code Online (Sandbox Code Playgroud)

所以定义一个函数来执行此操作:

def capfirst(s):
    return s[:1].upper() + s[1:]
Run Code Online (Sandbox Code Playgroud)

进而:

>>> capfirst(rc)
'RacEcar'
>>> capfirst('')
''
Run Code Online (Sandbox Code Playgroud)

  • 当然,除非您“希望”字符串为空,否则会出现错误。 (3认同)