Convertir entier de hex-string avec un format spécifique

Je suis nouveau sur le python et ont le problème suivant: j'ai besoin de convertir un entier en une chaîne hexadécimale avec 6 octets.

par exemple
281473900746245 --> "\xFF\xFF\xBF\xDE\x16\x05"

Le format de l'hex-string est important. La longueur de l'int valeur est variable.

Le format "0xffffbf949309L" ne fonctionne pas pour moi. (Je l'obtenir avec hex(int valeur))


Mon solution finale (après un certain "jeu") est:

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

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

    return hexed

Je vous remercie pour toute l'aide!

Voulez-vous la chaîne de caractères de longueur 6 défini par le Python littéral de chaîne "\xFF\xFF\xBF\xDE\x16\x05" ou la chaîne de caractères de longueur 24 donnés par "\\xFF\\xFF\\xBF\\xDE\\x16\\x05"?
Les termes "chaîne hexadécimale" et "format" sont trompeuses, ce que vous voulez vraiment est de former un nombre entier de taille arbitraire à une chaîne d'octets avec big-endian commande.
Veuillez excusez mon anglais, j'ai juste traduit les termes de ma première langue, merci pour la traduction.

OriginalL'auteur Oxymoron | 2011-07-29