【发布时间】:2019-07-03 11:45:58
【问题描述】:
假设我有代码txt = "Hello my name is bob. I really like pies.",我将如何单独提取每个句子并将其添加到列表中。我创建了这个凌乱的脚本,它给了我一些大致在一个字符串中的句子......
sentences = 0
capitals = [
'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S',
'T','U','V','W','X','Y','Z'
]
finish_markers = [
'.','?','!'
]
newTxt = txt.split()
for x in newTxt[1:-1]:
for caps in capitals:
if caps in x:
for fin in finish_markers:
if fin in newTxt[newTxt.index(x) - 1]:
sentences += 1
for caps in capitals:
if caps in newTxt[0]:
sentences += 1
print("Sentence count...")
print(sentences)
它使用了上面提到的txt 变量。但是我现在想提取每个句子并将它们放入一个列表中,以便最终产品看起来像这样......
['Hello my name is bob.','I really like pies.']
我不希望使用任何非标准包,因为我希望这个脚本独立于所有内容并且可以离线工作。感谢您的帮助!
【问题讨论】:
-
用
.分割字符串? -->"Hello my name is bob. I really like pies.".split(".") -
@Rakesh,并不总是有效。例如:“这个问题被标记为 python-3.x” - 将分为两部分。你可能想要nltk。
-
@Austin 如果是这样的话,那么确定这是句子结尾的方法可能是什么
-
谢谢,现在我将使用@Rakesh 的第一个选项,因为它可以正常工作,但是我会调查
nltk,但正如我所说,我会尽量避免使用任何额外的包。跨度>
标签: python-3.x