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

时间:2018-08-19 17:35:42

标签: python

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

1 个答案:

答案 0 :(得分:0)

结合使用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,它以分隔符和最大值为两个参数。我们进行了第一次分割,这应该是我们的结果。