У меня есть список, состоящий из неанглоязычного текста в формате utf-8. Поэтому, когда я пытаюсь напечатать одно слово, мне выдается следующее: u'والأرنب'
Поэтому, чтобы напечатать его как исходное слово, мне нужно зациклить его, и оно будет выводиться правильно, как исходное слово.
Я хочу найти 5 самых частых слов. При сохранении слов в функцию collections.counter() они вводятся в формате Unicode. Как мне получить доступ к слову внутри счетчика(), чтобы напечатать 5 самых частых слов.
Я сделал следующий код: (txt - мой текстовый файл)
слова = [w вместо w в txt.split()]
распечатает
[u'كان', u'يا', u'ما', ...u'كان', u'في', u'قديم']
Поэтому я зацикливаю его, чтобы получить желаемый результат (я не знаю, почему)
>>> for w in words:
print w,
распечатает
كان يا ما كان
Я использую функцию counter(), чтобы найти наиболее часто встречающиеся слова.
>>> count = collections.Counter(words)
>>> print count.most_common(5)
распечатает
>>> [(u'\u0627\u0644\u0633\u0644\u062d\u0641\u0627\u0629', 5),
(u'\u0627\u0644\u0645\u063a\u0631\u0648\u0631', 3),
(u'\u0627\u0644\u0623\u0631\u0646\u0628', 2), (u'\u060c', 2),
(u'\u0648\u0627\u0644\u0623\u0631\u0646\u0628', 2)]
Я хочу получить доступ к каждому слову и зациклить его, чтобы распечатать его с его частотой.