Nivre基于Arc-Eager Transition的依赖解析器:TypeError:预期的str,字节或os.PathLike对象,而不是NoneType

问题描述

我一直试图在通用TreeBank上运行基于Nivres Transition的解析器https://github.com/dpressel/arcs-py。这是读取树库的代码

import csv   
WORD = 0
POS = 1
HEAD = 2
LABEL = 3


def read_conll_deps(f):

    sentences = []

    with open(f) as csvfile:
        reader = csv.reader(csvfile,delimiter='\t',quoting=csv.QUOTE_NONE)

        sentence = []

        for row in reader:
            if len(row) == 0:
                sentence = [tok if tok[HEAD] is not -1 else (tok[WORD],tok[POS],len(sentence),tok[LABEL]) for tok in sentence]
                sentences.append(sentence)
                sentence = []
                continue
             sentence.append((row[1].lower(),row[3],int(row[6]) - 1,row[7]))

    return sentences

运行主解析器时出现以下错误

Traceback (most recent call last):
File "C:\Users\LENOVO\Desktop\WorkfromHome\CNN\Nivre_Parser.py",line 565,in 
<module>
    gold = filter_non_projective(fileio.read_conll_deps(opts.train))
      File "C:\Users\LENOVO\Desktop\WorkfromHome\CNN\fileio.py",line 13,in read_conll_deps
    with open(f) as csvfile:
      TypeError: expected str,bytes or os.pathLike object,not nonetype 

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)