簡體   English   中英

如何使用nltk分隔單個句子?

[英]How separate individual sentences using nltk?

對Noob進行編程,嘗試使用send_tokenize將文本拆分為單獨的句子。 盡管它似乎有效(在控制台中,使每個句子成為其自己的列表項),但是當我將其附加到一個空列表時,最終得到的是len 1的列表(嗯,是語法列表列表)。 ,我無法遍歷。 基本上,我希望能夠提取每個單獨的句子,以便可以將其與某些內容進行比較,例如,字符串“ Summer is great”。 也許有更好的方法可以完成此操作,但是請嘗試為我提供一個簡單的解決方案,因為Noob。 我想象每個句子的末尾都有一個標志,我可以用來一次附加一個句子,因此,只要指出這一點就足夠了。

我已經閱讀了文檔並嘗試添加以下代碼,但最終我的listz的長度為1,而不是分解為單個句子。

導入nltk nltk.download('punkt')

from nltk import sent_tokenize, word_tokenize

listz = []

s = "Good muffins cost $3.88\nin New York.  Please buy me two of 
them.\n\nThanks."

listz.append([word_tokenize(t) for t in sent_tokenize(s)])

print(listz)

---
// Expenced output listz = [["Good muffins cost $3.88 in New York."], 
["Please buy me two of them."], ["Thanks."]]

您應該使用extend

listz.extend([word_tokenize(t) for t in sent_tokenize(s)])

但是在這種情況下,簡單的分配有效:

listz = [word_tokenize(t) for t in sent_tokenize(s)]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM