Python中字符串的首字母仅大写

Python中字符串的首字母仅大写,python,string,capitalize,Python,String,Capitalize,我试图编写一个单行语句,在只将第一个字母大写,所有其他字母保持不变的情况下,将字符串的值赋给变量 例如,如果使用的字符串为: myString = 'tHatTimeIAteMyPANTS' 然后,该语句应导致另一个变量,如myString2等于: myString2 = 'THatTimeIAteMyPANTS' 像这样: myString= myString[:1].upper() + myString[1:] print myString 正如Barmar所说,您可以将第一个字符大写

我试图编写一个单行语句,在只将第一个字母大写,所有其他字母保持不变的情况下,将字符串的值赋给变量

例如,如果使用的字符串为:

myString = 'tHatTimeIAteMyPANTS'
然后,该语句应导致另一个变量,如
myString2
等于:

myString2 = 'THatTimeIAteMyPANTS'
像这样:

myString= myString[:1].upper() + myString[1:]
print myString

正如Barmar所说,您可以将第一个字符大写,并将其与字符串的其余部分连接起来

   myString = 'tHatTimeIAteMyPANTS'
   newString = "%s%s" % (myString[0].upper(), myString[1:])
   print(newString)  # THatTimeIAteMyPANTS

你有什么问题?获取第一个字符,将其转换为大写,并将其与原始字符串的其余部分连接起来。@I他不想做每一个字。他不应该在解决方案轰炸之前发布他尝试过的内容吗?:-)我尝试过使用myString2=myString.capitalize()),但这使得只有第一个字母大写,其余字母变为小写case@sobek我认为,与其给出那样空洞的解决方案,不如对其中一个解决方案给出一个真正长而清晰的解释。但已经有人回答说,编辑更容易做到
newString=myString[:1].upper()+myString[1::
,而且更清晰。执行
:1
和不执行
0
以防止字符串为空时出现异常这是一个很好的观点,我没有考虑空字符串。