2013-05-17 1 views
1

я должен декодировать значение '9DAFF2834DDD73C18D79E31DE22F0D49DF13E525D3FFAE599530BECCD1B916FF' заколдовать в Python:Decode двоичное значение в Python, который даст тот же результат, как Postgres декодировать

Для этого я делаю

>>> import binascii 
>>> 
>>> binascii.unhexlify('9DAFF2834DDD73C18D79E31DE22F0D49DF13E525D3FFAE599530BECCD1B916FF') 
>>>'\x9d\xaf\xf2\x83M\xdds\xc1\x8dy\xe3\x1d\xe2/\rI\xdf\x13\xe5%\xd3\xff\xaeY\x950\xbe\xcc\xd1\xb9\x16\xff' 

Но, Postgres дает значение как:

>>> db=> select decode('9DAFF2834DDD73C18D79E31DE22F0D49DF13E525D3FFAE599530BECCD1B916FF','hex') as sha; 

выход:

>>> \235\257\362\203M\335s\301\215y\343\035\342/\015I\337\023\345%\323\377\256Y\2250\276\314\321\271\026\377 

Есть ли какой-либо эквивалент в Python, который даст тот же результат, что и в Postgres (выход Postgres - bytea)?

ответ

1

Не быть грубым, но они точно такие же. Один восьмеричный, другой шестнадцатеричный.

>>> '\235\257\362\203M\335s\301\215y\343\035\342/\015I\337\023\345%\323\377\256Y\2250\276\314\321\271\026\377' 
'\x9d\xaf\xf2\x83M\xdds\xc1\x8dy\xe3\x1d\xe2/\rI\xdf\x13\xe5%\xd3\xff\xaeY\x950\xbe\xcc\xd1\xb9\x16\xff' 

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

  • Нет связанных вопросов^_^