22

Pythonの一部の文字列でcapitalizeメソッドを使用していましたが、文字列の1つがスペースで始まります。

phrase = ' Lexical Semantics'

phrase.capitalize()'語彙意味論'をすべて小文字で返します。何故ですか?

4

3 に答える 3

46

これはリストされた動作です:

最初の文字を大文字にし、残りを小文字にした文字列のコピーを返します。

最初の文字はスペースで、スペースは変更されず、残りは小文字です。

すべて大文字にしたい場合は、すべての単語の最初の文字についてstr.upper()、またはを参照してください。str.title()

>>> phrase = 'lexical semantics'
>>> phrase.capitalize()
'Lexical semantics'
>>> phrase.upper()
'LEXICAL SEMANTICS'
>>> phrase.title()
'Lexical Semantics'

または、単にスペースに問題がある場合:

>>> phrase = ' lexical semantics'
>>> phrase.strip().capitalize()
'Lexical semantics'
于 2012-02-11T02:53:34.683 に答える
3

.capitalize()最初の文字を大文字にします...これはスペースです:)他のすべての文字は小文字になります。

于 2012-02-11T02:52:43.437 に答える
2

これは、最初の文字が文字ではなくスペースであるためです。

于 2012-02-11T02:52:31.097 に答える