2015-03-13 2 views
2

Код:Преобразовать питона кодек текст

ff = open(outfile, 'rw').read().replace('\n','') 
for n in list(eval(ff)): 
    c = [] 
    c.append(n) 
    print c 

Вывод в файл:

((592, (1, '\xd0\x94\xd0\xbe\xd0\xb3\xd1\x81\xd1\x8f.', 0), (2, '\xd0\xa3\xd1\x81\xd0\xbe\xd1\x80\xd0\xbe\xd0\xbc.', 0), 
... 

Но я хочу видеть буквы, а не кодирование. I использовал .decode() с другим кодеком, но только изменил кодировку, не получил буквы

+0

что это за файл? Что такое расширение файла (.txt/.doc/...)? –

+0

делает 'print open (outfile) .read()' что вы хотите? – mkrieger1

+1

Как ваш код работает? 'eval' возвращает' None', что не является приемлемым аргументом для 'list' – mkrieger1

ответ

1

Я предполагаю, что вы пытаетесь прочитать файл на python и распечатать его по строкам. вы можете использовать этот фрагмент:

import sys 
outfile = 'file path' 

with open(outfile, 'r') as f: 
    lines = f.readlines() 
    for line in lines: 
     sys.stdout.write(line) 
+0

спасибо за 'stdout', это хорошее знание. Вероятно, проблема в 'eval', это конвертирует кодирование. Надеюсь, теперь нет. – rss

+0

но это не решение моей проблемы – rss

+0

@ rss, что вы пытаетесь сделать? –

Смежные вопросы