def hex(value: int) -> str
0x
de telle sorte qu'on peut reconvertir cette chaîne en numérique via un appel à
int(hex(value), 16)
. Si vous souhaitez par avoir le préfixe 0x
dans la chaîne produite,
préférez utiliser les fonctionnalités de formatage (voir l'exemple de code ci-dessous).
Return the hexadecimal representation of an integer. >>> hex(12648430) '0xc0ffee'
Paramètre | Description |
---|---|
value : int |
La valeur entière pour laquelle calculer la représentation hexadécimale. |
La valeur de retour est de type str.
Elle correspond à la représentation hexadécimale de votre valeur.
TypeError :Une exception de ce type sera déclenchée si le paramètre spécifié n'est pas un entier.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
#!/usr/bin/python3 # On génère quelques premières valeurs for value in range(16): print(f"{value:3} => {hex(value)}") print("----------------------------") # On test un "aller/retour" (décimal <-> hexadécimal) value = 1023 hex_value = hex(value) value2 = int(hex_value, 16) print(value, hex_value, value2) print("----------------------------") # Comparatifs avec les autres solutions de formatage value = 255 print(hex(value), format(value, '#X'), format(value, '#x'), format(value, 'X'), format(value, 'x')) print(hex(value), f'{value:#X}', f'{value:#x}', f'{value:X}', f'{value:x}') print(hex(value), "%#X" % value, "%#x" % value, "%X" % value, "%x" % value) |
Et voici les résultats produits par cet exemple.
$> python3 sample.py 0 => 0x0 1 => 0x1 2 => 0x2 3 => 0x3 4 => 0x4 5 => 0x5 6 => 0x6 7 => 0x7 8 => 0x8 9 => 0x9 10 => 0xa 11 => 0xb 12 => 0xc 13 => 0xd 14 => 0xe 15 => 0xf ---------------------------- 1023 0x3ff 1023 ---------------------------- 0xff 0XFF 0xff FF ff 0xff 0XFF 0xff FF ff 0xff 0XFF 0xff FF ff $>
Améliorations / Corrections
Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Emplacement :
Description des améliorations :