Попытка использовать заглавную строку, но не работает. Какие-нибудь мысли?
text = '''felt happy because I saw the others were happy
and because I knew I should feel happy,
but I wasn’t really happy.'''
print(text.capitalize())
Только первое слово становится заглавным.
2 ответа
Из официальной документации о capitalize()
:
Вернуть копию строки с первым символом в верхнем регистре, а остальные в нижнем регистре.
Метод, который вы ищете title()
, который будет использовать каждое слово с большой буквы. Вот описание из документации:
Возвращает основанную на заголовке версию строки, в которой слова начинаются с заглавной буквы, а остальные строчные.
Вот результат:
>>> text = '''felt happy because I saw the others were happy and because I knew I should feel happy, but I wasn’t really happy.'''
>>> print(text.title())
'Felt Happy Because I Saw The Others Were Happy And Because I Knew I Should Feel Happy, But I Wasn’T Really Happy.'
str.capitalize
задокументировано, что только заглавные буквы первого символа всей строки, а остальные строчные:
str.capitalize ()
Вернуть копию строки с первым символом в верхнем регистре, а остальные в нижнем регистре.
Если вы хотите использовать заглавные буквы первой буквы каждого слова (в нижнем регистре остальные слова), используйте.title()
; если вы хотите, чтобы каждый символ был заглавным, используйте.upper()
,