Найти - Пользователи
Полная версия: Кодировка в консоли
Начало » Python для новичков » Кодировка в консоли
1
afinik
В консоли некорректно отображается кириллица. То есть она отображается как должна но хотелось бы чтобы она была кириллицей в удобочитаемом формате, а не представленном ниже.:
>>> import decoder
1,2,3
1,3,4
1,2,3
1,3,4
1,2,3
1,3,4
1,2,3
1,3,4
Р°,Р±,РІ
Рі,Рґ,Рµ
Р°,Р±,РІ
Рі,Рґ,Рµ
Р°,Р±,РІ
Рі,Рґ,Рµ
Файл decoder.py
# -*- coding: utf8 -*-
path = '/home/afinik/python/csvexample.csv'
decfile=''.encode('cp1251');
fo=open(path, 'rb');
for char in fo.read():
decfile=decfile+char;
fo.close();
print decfile[:500].decode('cp1251');
Файл csvexample.csv:
1,2,3
1,3,4
1,2,3
1,3,4
1,2,3
1,3,4
1,2,3
1,3,4
а,б,в
г,д,е
а,б,в
г,д,е
а,б,в
г,д,е
Операционная система Ubuntu 10.04
Python 2.6
Александр Кошелев
В какой кодировке файл и консоль? Вы должны привести это к единому знаменателю.
retif
>>> sys.getdefaultencoding()
'ascii'
>>> unicode('ф'.decode('cp1251'))
u'\u0421\u201e'
>>> unicode('ф'.decode('cp1251')).encode('utf-8')
'\xd0\xa1\xe2\x80\x9e'

обьясните пожалуйста как в консоли увидеть в читабельном виде содержимое unicode строки содержащей русские буквы?
и правильно ли я создаю unicode строку? unicode('ф'.decode('cp1251')) или надо декодировать с помощью koi8_r?
o7412369815963
см
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB