中英文分詞分句
阿新 • • 發佈:2018-11-04
1.輸入一個段落,分成句子(Punkt句子分割器)
-
import nltk
-
import nltk.data
-
def splitSentence(paragraph):
-
tokenizer = nltk.data.load('tokenizers/punkt/english.pickle')
-
sentences = tokenizer.tokenize(paragraph)
-
return sentences
-
if __name__ == '__main__':
-
print splitSentence("My name is Tom. I am a boy. I like soccer!")
結果為['My name is Tom.', 'I am a boy.', 'I like soccer!']
2.輸入一個句子,分成片語
-
from nltk.tokenize import WordPunctTokenizer
-
def wordtokenizer(sentence):
-
#分段
-
words = WordPunctTokenizer().tokenize(sentence)
-
return words
-
if __name__ == '__main__':
-
print wordtokenizer("My name is Tom.")
結果為['My', 'name', 'is', 'Tom', '.']
nltk檢視下載配置位置,在 python 環境下,輸入:
import nltk
nltk.data.find(".")
電腦屬性環境變數中增加 NLTK_DATA,指向通過nltk.download()下載的資料路徑。
中文分句和分詞可以使用pyltp。
在使用pyltp進行英文分詞和分句的時候會出現錯誤,這個時候就可以使用NLTK進行英文的分句和分詞。
http://blog.csdn.net/baidu_27438681/article/details/60468848