Форум сайта python.su
0
Здравствуйте, у меня возникла проблема с кодом, при выводе в командную строку текстового файла , вместо букв выводятся иероглифы.Перепробовал все советы, но проблема осталась.Операционная система Windows.
# -*- coding: utf -8 -*- from sys import argv script, filename = argv txt = open(filename) print u"Содержимое файла %r:" % filename print txt.read() print u"Введите имя файла снова:" file_again = raw_input("> ") txt_again = open(file_again) print txt_again.read()
Отредактировано Dan1231 (Июнь 30, 2018 14:59:02)
Прикреплённый файлы:
ex15.py (321 байт)
Офлайн
61
предположительно виндовс в командной строке имеет кодировку cp866 а в обычной среде cp1251
Таким образом - каждую считанную строку из файла перед выводом в кончоль надо транскодировать.
encode('cp1251').decode('cp866')
Это примерно. Далее в гугле найдете море примеров по запросу
Python Windows вывод в консоль.
Офлайн
13
ZerGДаже если с “cp1251” не получится, вторая (многие текстовые редакторы в Windows выбирают ее как дефултную) дефултная в Windows и еще самая популярная 8-bit'ная кодировка это ANSI(cp1252).
Начало » Python для новичков » Проблема с чтением файла в командной строке (Python)
#1 Июнь 30, 2018 14:48:41
# Life loop while alive: if (fun > boredom) and money: pass_day(fun, boredom, money) continue else: break
Офлайн