1. 程式人生 > >Python中結巴分詞使用手記

Python中結巴分詞使用手記

img 3年 方法封裝 python token sys.path 裝飾 arp mage

結巴分詞方法封裝類

from __future__ import unicode_literals
import sys
sys.path.append("../")

import jieba
import jieba.posseg
import jieba.analyse

print(‘=‘*40)
print(‘1. 分詞‘)
print(‘-‘*40)

seg_list = jieba.cut("我來到北京清華大學", cut_all=True)
print("Full Mode: " + "/ ".join(seg_list))  # 全模式

seg_list = jieba.cut("我來到北京清華大學", cut_all=False)
print("Default Mode: " + "/ ".join(seg_list))  # 默認模式

seg_list = jieba.cut("他來到了網易杭研大廈")
print(", ".join(seg_list))

seg_list = jieba.cut_for_search("小明碩士畢業於中國科學院計算所,後在日本京都大學深造")  # 搜索引擎模式
print(", ".join(seg_list))

print(‘=‘*40)
print(‘2. 添加自定義詞典/調整詞典‘)
print(‘-‘*40)

print(‘/‘.join(jieba.cut(‘如果放到post中將出錯。‘, HMM=False)))
#如果/放到/post/中將/出錯/。
print(jieba.suggest_freq((‘中‘, ‘將‘), True))
#494
print(‘/‘.join(jieba.cut(‘如果放到post中將出錯。‘, HMM=False)))
#如果/放到/post/中/將/出錯/。
print(‘/‘.join(jieba.cut(‘「臺中」正確應該不會被切開‘, HMM=False)))
#「/臺/中/」/正確/應該/不會/被/切開
print(jieba.suggest_freq(‘臺中‘, True))
#69
print(‘/‘.join(jieba.cut(‘「臺中」正確應該不會被切開‘, HMM=False)))
#「/臺中/」/正確/應該/不會/被/切開

print(‘=‘*40)
print(‘3. 關鍵詞提取‘)
print(‘-‘*40)
print(‘ TF-IDF‘)
print(‘-‘*40)

s = "此外,公司擬對全資子公司吉林歐亞置業有限公司增資4.3億元,增資後,吉林歐亞置業註冊資本由7000萬元增加到5億元。吉林歐亞置業主要經營範圍為房地產開發及百貨零售等業務。目前在建吉林歐亞城市商業綜合體項目。2013年,實現營業收入0萬元,實現凈利潤-139.13萬元。"
for x, w in jieba.analyse.extract_tags(s, withWeight=True):
    print(‘%s %s‘ % (x, w))

print(‘-‘*40)
print(‘ TextRank‘)
print(‘-‘*40)

for x, w in jieba.analyse.textrank(s, withWeight=True):
    print(‘%s %s‘ % (x, w))

print(‘=‘*40)
print(‘4. 詞性標註‘)
print(‘-‘*40)

words = jieba.posseg.cut("我愛北京天安門")
for word, flag in words:
    print(‘%s %s‘ % (word, flag))

print(‘=‘*40)
print(‘6. Tokenize: 返回詞語在原文的起止位置‘)
print(‘-‘*40)
print(‘ 默認模式‘)
print(‘-‘*40)

result = jieba.tokenize(‘永和服裝飾品有限公司‘)
for tk in result:
    print("word %s\t\t start: %d \t\t end:%d" % (tk[0],tk[1],tk[2]))

print(‘-‘*40)
print(‘ 搜索模式‘)
print(‘-‘*40)

result = jieba.tokenize(‘永和服裝飾品有限公司‘, mode=‘search‘)
for tk in result:
    print("word %s\t\t start: %d \t\t end:%d" % (tk[0],tk[1],tk[2]))

結巴分詞的運行結果

技術分享

技術分享

Python中結巴分詞使用手記