Python實(shí)現(xiàn)提取語(yǔ)句中的人名
前言
本文提供將語(yǔ)句中的人名提取出來(lái)的工具方法,可以拿去直接使用。
環(huán)境依賴
需要安裝兩個(gè)庫(kù),其實(shí)一個(gè)也可以,但是我這邊準(zhǔn)備了兩個(gè)庫(kù)做個(gè)比較。
安裝命令如下:
pip install LAC -i https://pypi.douban.com/simple pip install ltp -i https://pypi.douban.com/simple
代碼
不廢話,上代碼。
#!/user/bin/env python
# coding=utf-8
"""
@project : csdn
@author : 劍客阿良_ALiang
@file : extract_sentence_name_tool.py
@ide : PyCharm
@time : 2022-01-25 11:11:43
"""
from LAC import LAC
from ltp import LTP
import time
lac = LAC(mode="lac")
ltp = LTP()
# 句子提取名字
def extract_name(sentence: str, type='lac'):
user_name_lis = []
if type == 'lac':
_result = lac.run(sentence)
for _index, _label in enumerate(_result[1]):
if _label == "PER":
user_name_lis.append(_result[0][_index])
elif type == 'ltp':
_seg, _hidden = ltp.seg([sentence])
_pos_hidden = ltp.pos(_hidden)
for _seg_i, _seg_v in enumerate(_seg):
_hidden_v = _pos_hidden[_seg_i]
for _h_i, _h_v in enumerate(_hidden_v):
if _h_v == "nh":
user_name_lis.append(_seg_v[_h_i])
else:
raise Exception('type not suppose')
return user_name_lis
if __name__ == '__main__':
_start_lac = time.time()
lis1 = extract_name("就因?yàn)榭戳松蝌v和賈玲的王牌對(duì)王牌節(jié)目,所以楊迪肯定偷題了。", 'lac')
_end_lac = time.time()
print("LAC: {} <- 耗時(shí)[{}]秒".format(lis1, (_end_lac - _start_lac)))
_start_ltp = time.time()
lis2 = extract_name("就因?yàn)榭戳松蝌v和賈玲的王牌對(duì)王牌節(jié)目,所以楊迪肯定偷題了。", 'ltp')
_end_ltp = time.time()
print("LTP: {} <- 耗時(shí)[{}]秒".format(lis2, (_end_ltp - _start_ltp)))代碼說(shuō)明:
1、extract_name方法入?yún)⒎謩e為:語(yǔ)句參數(shù)、類型參數(shù)。其中默認(rèn)為lac模式,可以選擇ltp模式。
其中l(wèi)ac模型提取人名的速率較快,但是ltp的提取人名準(zhǔn)確率更高。
驗(yàn)證一下
執(zhí)行看看效率。

總結(jié)
使用的時(shí)候可以多試試兩個(gè)庫(kù)的區(qū)別,ltp的準(zhǔn)確率稍微高一點(diǎn)。
到此這篇關(guān)于Python實(shí)現(xiàn)提取語(yǔ)句中的人名的文章就介紹到這了,更多相關(guān)Python提取人名內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
利用Python繪制隨機(jī)游走圖的詳細(xì)過(guò)程
隨機(jī)游走(random walk)也稱隨機(jī)漫步,隨機(jī)行走等,是以隨機(jī)的方式采取連續(xù)步驟的過(guò)程,下面這篇文章主要給大家介紹了關(guān)于利用Python繪制隨機(jī)游走圖的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-02-02
python os.listdir按文件存取時(shí)間順序列出目錄的實(shí)例
今天小編就為大家分享一篇python os.listdir按文件存取時(shí)間順序列出目錄的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-10-10
Python實(shí)現(xiàn)的單向循環(huán)鏈表功能示例
這篇文章主要介紹了Python實(shí)現(xiàn)的單向循環(huán)鏈表功能,簡(jiǎn)單描述了單向循環(huán)鏈表的概念、原理并結(jié)合實(shí)例形式分析了Python定義與使用單向循環(huán)鏈表的相關(guān)操作技巧,需要的朋友可以參考下2017-11-11
python實(shí)現(xiàn)一次性封裝多條sql語(yǔ)句(begin end)
這篇文章主要介紹了python實(shí)現(xiàn)一次性封裝多條sql語(yǔ)句(begin end),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-06-06
python自動(dòng)化測(cè)試用例全對(duì)偶組合與全覆蓋組合比較
這篇文章主要為大家介紹了python自動(dòng)化測(cè)試用例全對(duì)偶組合與全覆蓋組合比較,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06

