Преобразование целого числа в шестнадцатеричную строку с определенным форматом

Я новичок в Python и имею следующую проблему: мне нужно преобразовать целое число в шестнадцатеричная строка из 6 байтов.

например. 281473900746245 -> "\ xFF \ xFF \ xBF \ xDE \ x16 \ x05"

Формат шестнадцатеричной строки важен. Длина значения int является переменной.

Формат 0xffffbf949309L у меня не работает. (Я получаю это с помощью hex (int-value))


Мое окончательное решение (после некоторой «игры»):

def _tohex(self, int_value):
    data_ = format(int_value, 'x')

    result = data_.rjust(12, '0')
    hexed = unhexlify(result)

    return hexed

Спасибо за вашу помощь!

9
задан Oxymoron 2 August 2011 в 10:17
поделиться