如何从字符串中删除特定数量的单词

2024-04-26 14:38:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我想从字符串中删除一定数量的单词。例如,我的字符串是s = "I am a good person JOKE JOKE JOKE",我想从字符串中删除最后3个单词。怎么做


Tags: 字符串数量am单词persongoodjoke
1条回答
网友
1楼 · 发布于 2024-04-26 14:38:20

使用splitjoin的组合:

s = "I am a good person JOKE JOKE JOKE"

print(' '.join(s.split()[:-3]))
# I am a good person

如果我将其分解为一步一步的格式,它是这样的:

>>> s = "I am a good person JOKE JOKE JOKE"
>>> s.split()
['I', 'am', 'a', 'good', 'person', 'JOKE', 'JOKE', 'JOKE']  
>>> s.split()[:-3]                                          
['I', 'am', 'a', 'good', 'person']                          
>>> ' '.join(s.split()[:-3])
'I am a good person'

步骤

  • split()把句子分成单词

  • 通过列表切片排除最后三个单词

  • 使用join()连接列表


这是我们认为解决问题最常见的方法。但我可以找到另一个解决方案:

print(s.rsplit(' ', 3)[0])

这个函数使用rsplit,它将分隔符和最大值作为两个参数。我们进行第一次分割,这应该是我们的结果

相关问题 更多 >