我在打印希伯来语单词时遇到问题。我使用计数器模块是为了
计算我给定文本中的单词数(希伯来语)。计数器确实很重要
单词,并标识语言,因为我正在使用# -*- coding: utf-8 -*-
问题是,当我打印我的计数器,我得到奇怪的符号。(我正在使用eclipse)
这是代码和打印件:
# -*- coding: utf-8 -*-
import string
from collections import Counter
class classifier:
def __init__(self,filename):
self.myFile = open(filename)
self.cnt = Counter()
def generateList(self):
exclude = set(string.punctuation)
for lines in self.myFile:
for word in lines.split():
if word not in exclude:
nWord = ""
for letter in word:
if letter in exclude:
letter = ""
nWord += letter
else:
nWord += letter
self.cnt[nWord]+=1
print self.cnt
打印:
Counter({'\xd7\x97\xd7\x94': 465, '\xd7\x96\xd7\x95': 432, '\xd7\xa1\xd7\x92\xd7\x95\xd7\xa8': 421, '\xd7\x94\xd7\x92\xd7\x91': 413})
你知道怎么用正确的方式打印单词吗?
最佳答案
你得到的“奇怪的符号”是python表示unicode字符串的方式。
你需要解码它们,例如:
>>>打印'\xd7\x97\xd7\x94'。解码('UTF8')
חה