鍍金池/ 教程/ Python/ 同義詞和反義詞
文本翻譯
提取URL地址
處理PDF
塊分類
搜索和匹配
大寫轉換
提取電子郵件地址
字符串的不變性
文本處理狀態(tài)機
雙字母組
閱讀RSS提要
單詞替換
WordNet接口
重新格式化段落
標記單詞
向后讀取文件
塊和裂口
美化打印數字
拼寫檢查
將二進制轉換為ASCII
文本分類
文字換行
頻率分布
字符串作為文件
約束搜索
詞干算法
符號化
同義詞和反義詞
過濾重復的字詞
刪除停用詞
Python文本處理教程
文字摘要
段落計數令牌
語料訪問
文字改寫
文本處理簡介
處理Word文檔
Python文本處理開發(fā)環(huán)境
排序行

同義詞和反義詞

同義詞和反義詞作為wordnet的一部分提供,wordnet是英語的詞匯數據庫。 它作為nltk corpora訪問的一部分提供。 在wordnet中同義詞是表示相同概念并且在許多上下文中可互換的單詞,因此它們被分組為無序集(synsets)。 我們使用這些同義詞來導出同義詞和反義詞,如下面的程序所示。

from nltk.corpus import wordnet

synonyms = []

for syn in wordnet.synsets("Soil"):
    for lm in syn.lemmas():
             synonyms.append(lm.name())
print (set(synonyms))

當運行上面的程序時,我們得到以下輸出 -

set([grease', filth', dirt', begrime', soil', 
grime', land', bemire', dirty', grunge', 
stain', territory', colly', ground'])

為了獲得反義詞,只使用反義詞函數。

from nltk.corpus import wordnet
antonyms = []

for syn in wordnet.synsets("ahead"):
    for lm in syn.lemmas():
        if lm.antonyms():
            antonyms.append(lm.antonyms()[0].name())

print(set(antonyms))

當運行上面的程序時,我們得到以下輸出 -

set([backward', back'])