NLTK:将原始字符串转换为普通字符串

时间:2017-08-27 14:21:48

标签: string python-3.x nlp nltk

我有一篇来自NLTK路透社语料库的文章,作为原始字符串

>>>from nltk.corpus import reuters
>>>retail_article = reuters.raw('training/8173')
>>>print (retail_article)

"FRENCH GDP SHOULD RISE 2.3 PCT IN 1988 - MINISTRY\n  French gross domestic 
 product should grow\n  by 2.3 pct in 1988 after two pct growth this year 
 and 2.1 pct\n  in 1986, the Finance Ministry said.\n      The latest 
 forecast,...

而不是\n,我希望文本在一个单独的行中。我怎么能这样做?

>>>type(retail_article)
str

decode()不会处理字符串,encode()没有提供所需的结果。

TIA

1 个答案:

答案 0 :(得分:2)

您显示的输出不是通过编写print(retail_article)生成的。很明显,您只在解释器提示符下键入retail_article。差异很大,似乎是你混乱的根源。

无需转换。 A" raw" string是一种编写文字字符串的方法。语料库阅读器的raw()方法不返回"原始字符串",它只返回一个字符串。 (方法名称指的是不进行任何处理;返回文件的确切内容。)

您的字符串retail_article包含实际换行符,而非\n个序列。要查看换行符,请使用print(retail_article)。当您在命令提示符下编写retail_article时,您将获得字符串的明确表示(所谓的" repr"表单) - 您正在查看的内容。