Форум сайта python.su
pythonwinэто консольная программулина, которая позволяет вытянуть определенные логины из домена. Вот нечитаемое:
попробуй убрать try except>>> i=unicode('Текст','cp866').encode('cp866')
>>> i=i.decode('cp866')
>>> i.encode('cp1251')
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "encodings/cp1251.py", line 18, in encode
UnicodeEncodeError: 'charmap' codec can't encode character u'\u2568' in position 0: character maps to <undefined>wellобъясни что и как ты делаешь, а то мне напиример не понятно dsquery консольная утилита или приложение под вин32
меня возникла следующая проблема: когда я перехватываю вывод команды dsquery в Windows XP,
CN=˜¥¢ç¥ª® ‘¢¥â« ? ⮫쥢 („®¡ áá),OU
Офлайн
wellпопробуй вывести так:
CN=˜¥¢ç¥ª® ‘¢¥â« ? ⮫쥢 („®¡ áá),OU
Офлайн
pythonwinвот:wellпопробуй вывести так:
CN=˜¥¢ç¥ª® ‘¢¥â« ? ⮫쥢 („®¡ áá),OU
и выложить на форуме :)
CN=\x98\xa5\xa2\xe7\xa5\xad\xaa\xae \x91\xa2\xa5\xe2\xab\xa0\xad\xa0 \x80\xad\xa0\xe2\xae\xab\xec\xa5\xa2\xad\xa0 (\x84\xae\xad\xa1\xa0\xe1\xe1),
Офлайн
попробуй
print i.decode('cp866').encode('cp1251').decode('cp1251')
>>> i=“CN=\x98\xa5\xa2\xe7\xa5\xad\xaa\xae \x91\xa2\xa5\xe2\xab\xa0\xad\xa0 \x80\xad\xa0\xe2\xae\xab\xec\xa5\xa2\xad\xa0 (\x84\xae\xad\xa1\xa0\xe1\xe1),”
>>> i.decode('cp866')
u'CN=\u0428\u0435\u0432\u0447\u0435\u043d\u043a\u043e \u0421\u0432\u0435\u0442\u043b\u0430\u043d\u0430 \u0410\u043d\u0430\u0442\u043e\u043b\u044c\u0435\u0432\u043d\u0430 (\u0414\u043e\u043d\u0431\u0430\u0441\u0441),'
>>> i.decode('cp1251')
Traceback (most recent call last):
File “<stdin>”, line 1, in ?
File “encodings/cp1251.py”, line 22, in decode
UnicodeDecodeError: ‘charmap’ codec can't decode byte 0x98 in position 3: character maps to <undefined>
>>> i.decode('cp866').encode
<built-in method encode of unicode object at 0xb7d30338>
>>> i.decode('cp866').encode('cp1251')
'CN=\xd8\xe5\xe2\xf7\xe5\xed\xea\xee \xd1\xe2\xe5\xf2\xeb\xe0\xed\xe0 \xc0\xed\xe0\xf2\xee\xeb\xfc\xe5\xe2\xed\xe0 (\xc4\xee\xed\xe1\xe0\xf1\xf1),'
>>> i.decode('cp866').encode('cp1251').decode('cp1251')
u'CN=\u0428\u0435\u0432\u0447\u0435\u043d\u043a\u043e \u0421\u0432\u0435\u0442\u043b\u0430\u043d\u0430 \u0410\u043d\u0430\u0442\u043e\u043b\u044c\u0435\u0432\u043d\u0430 (\u0414\u043e\u043d\u0431\u0430\u0441\u0441),'
>>> print i.decode('cp866').encode('cp1251').decode('cp1251')
CN=Шевченко Светлана Анатольевна (Донбасс),
>>>
Офлайн
pythonwinТак не проще ли:
попробуй
print i.decode('cp866').encode('cp1251').decode('cp1251')
>>> i="CN=\x98\xa5\xa2\xe7\xa5\xad\xaa\xae \x91\xa2\xa5\xe2\xab\xa0\xad\xa0 \x80\xad\xa0\xe2\xae\xab\xec\xa5\xa2\xad\xa0 (\x84\xae\xad\xa1\xa0\xe1\xe1)," >>> print i.decode('cp866') CN=Шевченко Светлана Анатольевна (Донбасс),
Офлайн
xonixкак я понял well нужно было данные dsquery из консоли передать в приложение Windows, если же в консоль, то можно и твой вариант.
Так не проще ли:
Офлайн
А если такая ситуация, то как добиться корректоного отображения print'а в cmd?
# -*- coding: utf-8 -*-
s = “Я могучая стринга”
print s
пробовал
print s.decode ('cp866')- не помогло :(
Офлайн
а cp1251 не помогло?
Офлайн
pythonwinнеа
а cp1251 не помогло?
Офлайн
wellБлин, все решилось просто:
А если такая ситуация, то как добиться корректоного отображения print'а в cmd?
# -*- coding: utf-8 -*-
s = “Я могучая стринга”
print s
пробовалprint s.decode ('cp866')- не помогло :(
Отредактировано (Авг. 14, 2007 14:02:42)
Офлайн