Форум сайта python.su
Есть текстовые файлы в стандартной виндовой кодировке (windows-1251, как я понимаю), мне необходимо выделить оттуда все слова, проблема в том, что текст может быть как на русском, так и на английском языках. Сейчас код вот такой
f = codecs.open(doc, 'r', "windows-1251")
text = f.read()
text = unicode(text)
words = text.split()
print words
Офлайн
:)
так выделить или вывести на экран?
Офлайн
хочу вывести на экран, чтобы можно было проверить правильно ли слова распарсились
Офлайн
:)
попробуй выводить по одному слову
Офлайн
там всё равно выдаётся последовательность кодов, а мне хочется увидеть слова, которые выделились
Офлайн
:)
попробуйте слова перед выводом на экран перекодировать в кодировку консоли, в виндовс это cp866
Офлайн
а каким образом это можно сделать?
Офлайн
:)
к слову, text = unicode(text) делать не нужно, текст уже должен быть в юникоде…
Офлайн
:)
у строки есть два метода encode и decode
первый переводит из юникода в указанную кодировку
второй переводит из указанной кодировки в юникод
Офлайн
попробовал сделать вот так
f = codecs.open(doc, 'r', "cp866")
text = f.read()
words = text.split()
print words
Офлайн