2016-11-06 14 views
0

Я пытаюсь написать оператор одной строки, который присваивает значение переменной переменной после того, как ТОЛЬКО первая буква заглавна, а все остальные буквы остались неизменными.Заглавная буква первая буква из строки в Python

Например, если строка используется были:

myString = 'tHatTimeIAteMyPANTS' 

Тогда утверждение должно привести к другой переменной, такой как myString2 равным:

myString2 = 'THatTimeIAteMyPANTS' 
+1

Какая у вас проблема? Получите первый символ, преобразуйте его в верхний регистр и соедините с остальной исходной строкой. – Barmar

+0

@ Идос Он не хочет делать каждое слово. – Barmar

+0

Разве он не должен публиковать то, что он пытался, прежде чем он обрушился на решения? :-) – sobek

ответ

4

Как сказал Бармар, вы можете просто загладить первый символ и объединить его с остальной частью строки.

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

. Просто сделать 'newString = myString [: 1] .upper() + myString [1:]' и clearer. Выполнение ': 1', а не' 0' для предотвращения исключений в случае, если строка пуста – Artemis

+0

Да, хорошая точка зрения, я не думал о пустых строках. – chatton

4

Как это:

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