gpt4 book ai didi

python - 更快更简洁地反转字符串中的句子?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:31:21 25 4
gpt4 key购买 nike

好的,我正在寻找一种以快速简洁的方式反转字符串中的句子的方法。

例如,如果我想转换““一二三。四五六”。到“三二一。六五四。”

这是我天真的方法:

def reverse_sentences(str):
newlist=str.split(".")
newstr=''
for s in newlist[0:-1]:
words=s.split()
words=words[::-1]
words[0]=words[0][0].upper()+words[0][1:]
words[-1]=words[-1][0].lower()+words[-1][1:]
for e in range(len(words)):
words[e].strip()
if words[e] != words[-1]:
newstr+=words[e]+" "
else:
newstr+=words[e]
newstr+=". "
return newstr

任何更快、更 Pythonic 的方式来做到这一点,例如列出理解和东西。

最佳答案

这是一个使用列表理解切片str.join的长单行代码:

In [79]: t="One two three. Four five six."

In [80]: ' '.join(' '.join(sentence.lower().split()[::-1]).capitalize()+'.'
...: for sentence in t.split('.')[:-1])
Out[80]: 'Three two one. Six five four.'

关于python - 更快更简洁地反转字符串中的句子?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22109485/

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