rely_id = [arc.head for arc in arcs] # 提取依存父节点id
relation = [arc.relation for arc in arcs] # 提取依存关系
heads = ['Root' if id == 0 else words[id-1] for id in rely_id] # 匹配依存父节点词语
for i in range(len(words)):
print(relation[i] + '(' + words[i] + ', ' + heads[i] + ')')
## 如何复现这一错误
直接运行
运行环境
python3.6.10
Ubuntu20.04
您好!
报错信息为:
Traceback (most recent call last):
File "", line 1, in
TypeError: init(): incompatible constructor arguments. The following argument types are supported:
代码片段
import os import jieba from pyltp import Postagger, Parser sent = '2018年7月26日,华为创始人任正非向5G极化码(Polar码)之父埃尔达尔教授举行颁奖仪式,表彰其对于通信领域做出的贡献。'
# 下面这些是便于分词的 jieba.add_word('Polar码') jieba.add_word('5G极化码') jieba.add_word('埃尔达尔') jieba.add_word('之父') words = list(jieba.cut(sent))#分词后的列表
# ['2018', '年', '7', '月', '26', '日', ',', '华为', '创始人', '任正非', '向', '5G极化码', '(', 'Polar码', ')', '之父', '埃尔达尔', '教授', '举行', '颁奖仪式', ',', '表彰', '其', '对于', '通信', '领域', '做出', '的', '贡献', '。'] print(words)
# 词性标注 postagger = Postagger(os.path.join("data", "pos.model")) postags = postagger.postag(words) print("\t".join(postags))
# 依存句法分析 par_model_path = os.path.join(os.path.join("data","parser.model")) parser = Parser() parser.load(par_model_path) arcs = parser.parse(words, postags)
rely_id = [arc.head for arc in arcs] # 提取依存父节点id relation = [arc.relation for arc in arcs] # 提取依存关系 heads = ['Root' if id == 0 else words[id-1] for id in rely_id] # 匹配依存父节点词语
for i in range(len(words)): print(relation[i] + '(' + words[i] + ', ' + heads[i] + ')')
## 如何复现这一错误
直接运行
运行环境
python3.6.10 Ubuntu20.04
您好!
报错信息为:
Traceback (most recent call last): File "", line 1, in
TypeError: init(): incompatible constructor arguments. The following argument types are supported:
Invoked with:
求问依存句法分析下面的应该怎么修改? 谢谢您!