用python2.7打印阿拉伯语单词和列表

2024-09-27 07:29:58 发布

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

我使用AnacondaPython2.7进行阿拉伯语文本分类 当我打印单词、列表或单词时,它以Unicode显示 我想打印真正的阿拉伯单词 列表contians[阿拉伯语句子,标签]

from nltk.corpus.reader import CategorizedPlaintextCorpusReader
reader = CategorizedPlaintextCorpusReader('mypath\\', r'(\w+)\.txt', cat_pattern=r'(\w+)\.txt',encoding='utf-8')
document=reader.words('fileid')

documen[0]

输出

[[u'\u0631\u0626\u064a\u0633', u'\u0627\u0644\u0628\u0631\u0644\u0645\u0627\u0646', ...], 'Politic']


Tags: from文本txt列表unicode分类标签单词
2条回答

首先,我假设这是因为python2.7是在ASCII焦点下编写的(因此,str(u'\u0631')会产生一个UnicodeEncodeError,因为在ASCII中不存在ξ字符。print u'\u0631'可能是因为它只是将unicode直接发送到控制台,控制台配备了处理unicode呈现的功能。在

这就是Python2打印列表时的工作方式。打印单个字符串或更新到Python 3:

Python 2

>>> s = [[u'\u0631\u0626\u064a\u0633', u'\u0627\u0644\u0628\u0631\u0644\u0645\u0627\u0646'], 'Politic']
>>> print s
[[u'\u0631\u0626\u064a\u0633', u'\u0627\u0644\u0628\u0631\u0644\u0645\u0627\u0646'], 'Politic']
>>> print s[0][0]
رئيس
>>> print s[0][1]
البرلمان

Python 3

^{pr2}$

{cd3>使用旧的Python行为^

>>> print(ascii(s))
[['\u0631\u0626\u064a\u0633', '\u0627\u0644\u0628\u0631\u0644\u0645\u0627\u0646'], 'Politic']

相关问题 更多 >

    热门问题