【问题标题】:All text is saved in one line所有文本都保存在一行中
【发布时间】:2018-08-27 10:23:14
【问题描述】:

所以,我尝试使用 Python 中的 NLTK 对文本文件进行词性标注。 这是我使用的代码

import nltk
from nltk import word_tokenize, pos_tag
f = open('all.txt')
raw = f.read()
text = word_tokenize(raw)
paosted = nltk.pos_tag(text)
saveFile = open('ol.txt', 'w')
saveFile.write(str(paosted))
saveFile.close()

代码确实有效,但问题是它将所有文本保存在一行中,如附图所示。 as shown here .. 我知道我应该使用 "\n" 函数,但我是 python 新手,不知道怎么做,所以任何帮助将不胜感激:) ..

                      -------- UPDATE -----------

好吧,人们真的很有帮助并提供了一些解决方案,即这段代码:

import nltk
from nltk import word_tokenize, pos_tag
f = open('all.txt')
raw = f.read()
text = word_tokenize(raw)
paosted = nltk.pos_tag(text)
saveFile.write(str(paosted).replace('),' ,  '),\n'))
saveFile.close()

但我仍然需要以段落的形式使用它,因为我稍后将在索引软件中使用它。请看一下这个截图: https://i.stack.imgur.com/tU1NW.png

【问题讨论】:

  • 您的问题到底是什么?为什么不在你想要换行符的字符串中添加“\n”?
  • 正如我所指出的,我不知道如何(或在何处)在我的代码中添加“\n”。我是 Python 新手。

标签: python nltk pos-tagger


【解决方案1】:

paosted 是一个元组列表,您可以对其进行迭代并将每个元组写入一行

例如:

paosted = nltk.pos_tag(text)
saveFile = open('ol.txt', 'w')
for line in paosted:
    saveFile.write(str(line)+ "\n")
saveFile.close()

【讨论】:

  • saveFile.write("\n".join(paosted)) 怎么样?
  • @RaunaqJain Jain 我做到了!我收到了这个错误:TypeError: sequence item 0: expected string, tuple found
  • @Rakesh 这真的很有帮助!谢谢!但是,我现在没有单独的行,而是将每个单词放在一行中。我需要具有带有标记的段落格式。
  • 你能发布你的预期输出吗?
【解决方案2】:

相应地更新我的答案,

temp = []
for i in paosted:
    temp.append("_".join(i))

" ".join(temp)

【讨论】:

  • 嗯..变化很大..但我仍然需要以段落的形式使用它,因为我稍后将在索引软件中使用它。请看一下这个截图:i.stack.imgur.com/tU1NW.png
  • 你应该更新问题!查看[最小] [1]:
  • 我已经更新了这个问题。我想我一开始并没有很好地表达自己。我希望现在更清楚了。
【解决方案3】:

谢谢大家!我遵循了您的一些说明,我得到的最好结果是使用以下代码:

import nltk
from nltk import word_tokenize, pos_tag
f = open('all.txt')
raw = f.read()
text = word_tokenize(raw)
paosted = nltk.pos_tag(text)
saveFile = open('output.txt', 'w')
saveFile.write(str(paosted).replace("('.', '.')" ,  "\n"))
saveFile.close()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-20
    • 2016-05-14
    相关资源
    最近更新 更多