python在以空格开头的字符串上使用capitalize()
我在Python中对一些字符串使用了capitalize方法,其中有一个字符串是以空格开头的:
phrase = ' Lexical Semantics'
phrase.capitalize()
返回的是 ' lexical semantics',而且全都是小写。这是为什么呢?
3 个回答
2
这是因为第一个字符是空格,而不是字母。
3
.capitalize()
这个方法会把字符串的第一个字符变成大写字母... 如果第一个字符是空格的话,那就没什么变化了 :) 其他的字符都会变成小写字母。
47
这是一个列出的行为:
返回一个字符串的副本,首字母大写,其余字母小写。
如果第一个字符是空格,空格保持不变,其余部分会变成小写。
如果你想把整个字符串都变成大写,可以看看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'