我有以下Python 2.7代码:
mydoclist = ['جوليا تحبني اكثر من ليندا','جين تحبني اكثر من جوليا','احمد يحب كرة السلة اكثر من كرة الطاولة']
from collections import Counter
for doc in mydoclist:
tf = Counter()
for word in doc.split():
tf[word] +=1
print tf.items()
我得到了以下输出:
[(u'\u062a\u062d\u0628\u0646\u064a', 1), (u'\u0645\u0646', 1), (u'\u062c \u0648\u0644\u064a\u0627', 1), (u'\u0644\u064a\u0646\u062f\u0627', 1), (u'\u0627\u0643\u062b\u0631', 1)]
[('\xd8\xac\xd9\x8a\xd9\x86', 1), ('\xd9\x85\xd9\x86', 1), ('\xd8\xac\xd9\x88\xd9\x84\xd9\x8a\xd8\xa7', 1), ('\xd8\xaa\xd8\xad\xd8\xa8\xd9\x86\xd9\x8a', 1), ('\xd8\xa7\xd9\x83\xd8\xab\xd8\xb1', 1)]
[('\xd8\xa7\xd9\x83\xd8\xab\xd8\xb1', 1), ('\xd8\xa7\xd8\xad\xd9\x85\xd8\xaf', 1), ('\xd9\x8a\xd8\xad\xd8\xa8', 1), ('\xd8\xa7\xd9\x84\xd8\xb7\xd8\xa7\xd9\x88\xd9\x84\xd8\xa9', 1), ('\xd9\x83\xd8\xb1\xd8\xa9', 2), ('\xd8\xa7\xd9\x84\xd8\xb3\xd9\x84\xd8\xa9', 1), ('\xd9\x85\xd9\x86', 1)]
为什么我看不到阿拉伯语单词。我想看到阿拉伯语单词而不是输出中出现的这些代码。感谢。
答案 0 :(得分:2)
Python打印列表,以便其中的所有项目都通过repr
传递,而u"..."
反过来产生这些东西" \ u ..."。另请查看关于unicode-strings的教程部分或更好的unicode HOWTO他们帮助了我很多。
对于包含非ascii字符的源代码,您应该set an encoding(很可能" utf-8")。您还可以标记包含unicode("..."
而不是# -*- coding: utf-8 -*-
from collections import Counter
mydoclist = [u'جوليا تحبني اكثر من ليندا',u'جين تحبني اكثر من جوليا',u'احمد يحب كرة السلة اكثر من كرة الطاولة']
for doc in mydoclist:
tf = Counter()
for word in doc.split():
tf[word] +=1
print u", ".join( u"(%i: %s)"%(n,s) for (s,n) in tf.items())
)等字符的字符串
var data = new Date();
适合我。