powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Python 3: вывести в print() файл в cp866
3 сообщений из 3, страница 1 из 1
Python 3: вывести в print() файл в cp866
    #37752409
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Файл записан виндовой утилитой командной строки - attrib. Направить вывод команды в StringIO не получилось. Но не об этом.

Файл записан в 866 и после чтения файла в строку и вывода в print() - крякозябры в одном случае и исключение в другом случае (внешне оба кода очень похожи).

Как строку содержащую 866 преобразовать... уж не знаю куда. В unicode наверное??? =)

Код:
Код: python
1.
2.
3.
4.
contents = ""
with open("MyTempFile.trololo", "rt") as output:
    contents = output.read()
print("FAIL: {0:s}\nExit code: {1:d}\nMessage:\n{2:s}".format("wwww", 12, contents))
...
Рейтинг: 0 / 0
Python 3: вывести в print() файл в cp866
    #37752861
Жырный Тони
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: python
1.
2.
3.
4.
5.
6.
# -*- coding:utf-8 -*-
f=open('dd.txt','r')
s=f.read()
f.close()
print 'one --->', s
print 'two --->', s.decode('KOI8-R')


Код: sql
1.
2.
3.
smirnov@smirnov ~ $ python tr.py
one---> ���������� ���!
two --->Здравствуй мир!
...
Рейтинг: 0 / 0
Python 3: вывести в print() файл в cp866
    #37753323
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Жырный Тони,

Угу. Это Python 2. В том то и проблема что оно не работает в Python 3 даже в таком виде:
Код: python
1.
2.
3.
4.
5.
f=open('dd.txt','r')
s=f.read()
f.close()
print('one --->', s)
print('two --->', s.decode('cp866'))


У string метода decode() нет. Но я уже разобрался.
Код: python
1.
2.
3.
4.
5.
f=open('dd.txt','rb')
s=f.read()
f.close()
print('one --->', s)
print('two --->', str(s, 'cp866'))
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Python 3: вывести в print() файл в cp866
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]