提取姓名包含大写字母s的几行记录Python代码
#!/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("就因为看了沈腾和贾玲的王牌对王牌节目,所以杨迪肯定偷题了。",'lac')
_end_lac=time.time()
print("LAC:{}<-耗时[{}]秒".format(lis1,(_end_lac-_start_lac)))
_start_ltp=time.time()
lis2=extract_name("就因为看了沈腾和贾玲的王牌对王牌节目,所以杨迪肯定偷题了。",'ltp')
_end_ltp=time.time()
print("LTP:{}<-耗时[{}]秒".format(lis2,(_end_ltp-_start_ltp)))

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。