我怎样才能去掉列表中项目之间的新行?

2024-05-14 16:27:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我在使用自然语言工具箱执行命名实体识别时遇到问题。在我可以执行NER之前,我必须执行句子切分、标记化和词性标注。我使用以下代码完成了此操作:

def prepfunc(doc):
    segsents = nltk.sent_tokenize(doc)
    toksents = [nltk.word_tokenize(sent) for sent in segsents]
    possents = [nltk.pos_tag(sent) for sent in toksents]
    return possents

prepfunc(doc)

我需要这个的输出在一行上:

[[('word1', 'tag'), ('word2', 'tag'), ('word3', 'tag'), ...]...]

相反,我得到的是每一个单词都在一行:

[[('word1', 'tag'),
('word2', 'tag'),
('word3',
'tag'),
...]
...]

我可能忽略了一些简单的原则,但是我不知道如何删除列表项之间的新行。你知道吗

我一直在寻找解决这个问题的方法,但是,我找到的大多数方法都是从列表中的字符串中删除新行。我需要从列表中删除换行符。你知道吗

编辑:

打印输出的代码是:

prepfunc(doclist[0])

我像这样打开了文件:

f='myfile.txt'
opf=open(f, encoding="UTF-8")
doclist=opf.read().split('\n')

我必须这样打开文件。你知道吗


Tags: 代码in列表fordoctagsenttokenize

热门问题