如何在我的Python代码中输入阿拉伯文本?

5 投票
2 回答
5393 浏览
提问于 2025-04-17 17:50

我的项目是识别阿拉伯语中的情感,判断是积极的还是消极的(情感分析)。为此,我使用了NLTK和Python。当我输入阿拉伯语的推文时,出现了一个错误。

>>> pos_tweets = [(' أساند كل عون أمن شريف', 'positive'),
              ('ما أحلى الثورة التونسية', 'positive'),
              ('أجمل طفل في العالم', 'positive'),
              ('الشعب يحرس', 'positive'),
              ('ثورة شعبنا هي ثورة الكـــرامة وثـــورة الأحــــرار', 'positive')]
Unsupported characters in input

我该如何解决这个问题呢?

2 个回答

3

我通常会用一个简单的方法在我的Python代码中输入UTF-8。我不知道为什么这样做有效,但在我添加了这些代码行后,它就能接受Unicode字符串,并且脚本运行得很顺利:

#! /usr/local/bin/python  -*- coding: UTF-8 -*-

pos_tweets = [(u' أساند كل عون أمن شريف', 'positive'), 
(u'ما أحلى الثورة التونسية', 'positive'), 
(u'أجمل طفل في العالم', 'positive'), 
(u'الشعب يحرس', 'positive'), 
(u'ثورة شعبنا هي ثورة الكـــرامة وثـــورة الأحــــرار', 'positive')] 

for i in pos_tweets:
  print i[0], i[1]
3

你的问题是出现在IDLE这个环境里。根据我所知道的,IDLE在交互模式下不支持UTF-8格式的输入。

我建议你使用其他更好的环境,比如DreamPie或者PythonWin

撰写回答