如何使用 upper() 制作字符串大写的第一个字母 - PYTHON

问题描述

我正在尝试将字符串的第一个字母更改为大写。我知道使用 capitalize() 或 title() 是可能的,但我只是在测试一下,想知道如何使用 upper() 做同样的事情。我试过的代码出现了错误消息:'TypeError: newS must be a string on line 10'。任何建议将不胜感激!

def uppercase(string):
  string = string.replace(string[0],string[0].upper) 
  return string
print uppercase("hello")

解决方法

您在调用 () 时错过了 upper,这是一个方法:

def uppercase(string):
  string = string.replace(string[0],string[0].upper(),1) 
  return string

print(uppercase("hello"))

此外,正如 deceze 指出的那样,基于 replace() 的方法将按原样失败,您可以使用可选的 maxreplace 参数 1 仅替换第一次出现。

,

你可能会

def uppercase(string):
  string = string.replace(string[0],1) 
  return string
print uppercase("hello")

请注意,有 .upper() 即方法被调用并且 1 限制替换次数,因此 aaa 将变为 Aaa 而不是 AAA。此解决方案假定 string 永远不会为空 str