str.capitalize() 和 str.title() 有什么区别?
Any difference between str.capitalize() and str.title()?
str.title()
和 str.capitalize()
有区别吗?我对文档的理解是,这两种方法都将单词的第一个字母大写,并将其余字母小写。有人 运行 遇到过不能互换使用的情况吗?
是的,有区别。 2, 实际上。
- 在
str.title()
中,如果单词中包含撇号,则撇号后面的字母将大写。
str.title()
将句子中的每个单词大写,而 str.capitalize()
仅将整个字符串的第一个单词大写。
str.title()
Return a titlecased version of the string where words start with an
uppercase character and the remaining characters are lowercase.
For example:
>>> 'Hello world'.title()
'Hello World'
The algorithm uses a simple language-independent definition of a word as groups of consecutive letters. The definition works in many contexts but it means that apostrophes in contractions and possessives form word boundaries, which may not be the desired result:
title()
改变每个单词,但 capitalize()
只改变句子中的第一个单词:
>>> a = 'silly question'
>>> a.title()
'Silly Question'
>>> a.capitalize()
'Silly question'
>>>
我举个例子说明一下区别:
假设您有一个字符串 str1 = 'a b 2w'
并且您想要将所有第一个字符大写,但如果第一个字符是数字那么您不想更改。
期望的输出 -> A B 2w
如果你这样做 str1.title()
它会导致这个 -> A B 2W
str1.capitalize()
将给出以下结果 -> A b 2w
要获得所需的结果,您必须执行以下操作:
对于 str1.split() 中的 x:
str1 = str1.replace(x, x.capitalize())
str.title()
和 str.capitalize()
有区别吗?我对文档的理解是,这两种方法都将单词的第一个字母大写,并将其余字母小写。有人 运行 遇到过不能互换使用的情况吗?
是的,有区别。 2, 实际上。
- 在
str.title()
中,如果单词中包含撇号,则撇号后面的字母将大写。 str.title()
将句子中的每个单词大写,而str.capitalize()
仅将整个字符串的第一个单词大写。
str.title()
Return a titlecased version of the string where words start with an uppercase character and the remaining characters are lowercase.
For example:
>>> 'Hello world'.title() 'Hello World'
The algorithm uses a simple language-independent definition of a word as groups of consecutive letters. The definition works in many contexts but it means that apostrophes in contractions and possessives form word boundaries, which may not be the desired result:
title()
改变每个单词,但 capitalize()
只改变句子中的第一个单词:
>>> a = 'silly question'
>>> a.title()
'Silly Question'
>>> a.capitalize()
'Silly question'
>>>
我举个例子说明一下区别:
假设您有一个字符串 str1 = 'a b 2w'
并且您想要将所有第一个字符大写,但如果第一个字符是数字那么您不想更改。
期望的输出 -> A B 2w
如果你这样做 str1.title()
它会导致这个 -> A B 2W
str1.capitalize()
将给出以下结果 -> A b 2w
要获得所需的结果,您必须执行以下操作:
对于 str1.split() 中的 x:
str1 = str1.replace(x, x.capitalize())