Python中的这个函数有一个小问题,它应该返回字符串中每个单词的第一个字母大写,其他所有字母都小写:
def titleize(phrase):
split_phrase = phrase.split()
for word in split_phrase:
word.capitalize()
return ' '.join(split_phrase)
titleize('oNLy cAPITALIZe fIRSt')
->oNLy cAPITALIZe fIRSt
很明显,问题在于这个短语(我想)上的循环被分割了,我怀疑它不是变异,而是创造了一些新的东西,但我一直在努力修复它
我可以建议使用内置的
str.title()
函数吗输出:
如果
split_phrase
变量在任何时候都没有改变,就不会在任何地方分配结果您可以按照@pythonenthusiast的建议使用
str.title()
,或者使用list comprehension来简化当前的方法:原始代码的更正版本可能如下所示:
在这里,创建了一个新的
result
列表,在每次迭代中,我们将更改的单词附加到列表中。最后,我们join
并返回新的result
列表相关问题 更多 >
编程相关推荐