>> myStr.title() "Madam. I'M Adam! I Also Tried-6ren">
gpt4 book ai didi

python - string.title() 认为撇号是一个新词的开头。为什么?

转载 作者:太空宇宙 更新时间:2023-11-03 12:29:07 25 4
gpt4 key购买 nike

>>> myStr="madam. i'm adam! i also tried c,o,m,m,a"
>>> myStr.title()
"Madam. I'M Adam! I Also Tried C,O,M,M,A"

这当然是不正确的。为什么将撇号视为新词的开头。这是陷阱还是我对 title 的概念有误?

最佳答案

因为实现是通过查看前一个字符来工作的,如果它是字母数字,则将当前字符小写,否则将其大写。也就是说,它比较简单,这是它的纯 python 版本的样子:

def title(string):
result = []
prev_letter = ' '

for ch in string:
if not prev_letter.isalpha():
result.append(ch.upper())
else:
result.append(ch.lower())

prev_letter = ch

return "".join(result)

关于python - string.title() 认为撇号是一个新词的开头。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7786868/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com