python wordnet 常用方法使用

wordnet 包的使用

  1. 下載nltk包,運行下方代碼

    import nltk
    nltk.download()
    # OR
    nltk.download("wordnet")
    

    corpora中選擇wordnet相關包下載

  2. 導入包

    from nltk.corpus import wordnet as wn
    
  3. 查找一個詞所在的所有詞集

    wn.synsets('cat')
    # 可以指定所需要詞集的形式
    wn.synsets('cats', pos=wn.VERB)  # pos 確定詞集的屬性
    # pos 還可以是 NOUN, ADV, ADJ, 
    
  4. 查找一個詞的定義

    wn.synset('cat.n.01').definition()
    # cat -> 表示需要查詢的詞
    # n -> 表示名詞
    # 另外 a -> ADJ  r -> ADV  n -> NOUN  v-> VERB
    # 01 -> 取第一個名詞(由n定義)的意思
    
  5. 由一個詞造句

    wn.synset('cat.n.01').examples()  # 有時候並不會含有對應的例子
    
  6. 獲取一個詞的詞性

    cat = wn.synset("cat.n.01")
    cat.pos()
    
  7. 定義一個詞條

    wn.lemmas("cat.n.01.cat")  # 詞.詞性.順序.詞條名
    
  8. 獲取一個詞的詞條

    wn.synset("cat.n.01").lemmas()     
    
  9. 獲取一個詞的詞條名

    wn.synset("cat.n.01").lemma_names()
    
  10. 獲取一個詞的上位詞

    wn.synset("cat.n.01").hypernyms()
    
  11. 獲取一個詞的下位詞

    wn.synset("cat.n.01").hyponyms()
    
  12. 獲取一個事物可以組成的整體

    wn.synset("tree.n.01").member_holonyms()
    
  13. 獲取兩個詞在分類樹中的距離

    cat = wn.synset("cat.n.01")
    dog = wn.synset("dog.n.01")
    cat.shortest_path_distance(dog)
    
  14. 獲取與對應詞相似的詞(對副詞和形容詞比上方方法更有效)

    good = wn.synset("good.a.1")
    good.similar_tos()
    
  15. 查詢兩個詞之間的語義相似度

    cat.path_similarity(dog)
    
  16. 使用詞條查詢反義詞

    # 不能直接使用synset 進行查詢
    good.lemmas()[0].antonyms()
    
  17. 查詢一個詞的組成部分

    wn.synset('room.n.01').part_meronyms()
    
  18. 查詢一個物質的材質

    wn.synset('meat.n.01').substance_meronyms()
    
  19. 查詢一個詞蘊含的關係

    wn.synset('walk.v.01').entailments()  # 比如走路蘊含着一步一步
    
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章