Convertir un octet en hexadécimal en Python
- Initialiser un octet littéral en Python
-
Utilisez la méthode
hex()
pour convertir un octet en hexadécimal en Python -
Utilisez le module
binascii
pour convertir un octet en hexadécimal en Python
Ce tutoriel présente comment convertir des octets en hexadécimal en Python.
Le type de données en Python est une séquence d’octets qui peut être stockée sur le disque comme une variable, qui peut ensuite être encodée et décodée. Ils sont déclarés comme une chaîne de caractères mais préfixés par le caractère b
. Les octets acceptent les caractères Unicode spéciaux préfixés par le caractère \x
.
Initialiser un octet littéral en Python
Nous donnerons un exemple d’octet littéral, déclarerons une chaîne de caractères spéciaux et utiliserons la fonction encode('utf-8')
pour la convertir en octet littéral.
byte_var = "γιαούρτι - yogurt".encode("utf-8")
print(byte_var)
Production :
b'\xce\xb3\xce\xb9\xce\xb1\xce\xbf\xcf\x8d\xcf\x81\xcf\x84\xce\xb9 - yogurt'
La sortie de encode()
donnera un octet littéral préfixé avec le caractère b
et les caractères spéciaux convertis en symboles Unicode.
Maintenant que la déclaration d’un octet est couverte, procédons à la conversion d’un octet en hexadécimal.
Utilisez la méthode hex()
pour convertir un octet en hexadécimal en Python
La hex()
méthode introduite par Python 3.5 la convertit en une chaîne hexadécimale.
Dans ce cas, l’argument sera de type octet de données à convertir en hexadécimal.
byte_var = "γιαούρτι - yogurt".encode("utf-8")
print("Byte variable: ", byte_var)
print("Hexadecimal: ", byte_var.hex())
Production :
Byte variable: b'\xce\xb3\xce\xb9\xce\xb1\xce\xbf\xcf\x8d\xcf\x81\xcf\x84\xce\xb9 - yogurt'
Hexadecimal: ceb3ceb9ceb1cebfcf8dcf81cf84ceb9202d20796f67757274
Utilisez le module binascii
pour convertir un octet en hexadécimal en Python
Le module Python binascii
contient des fonctions utilitaires efficaces pour les opérations binaires et ASCII.
Dans ce module, il y a une fonction hexlify()
qui retourne une valeur hexadécimale de l’argument donné, qui est une valeur binaire.
Dans cet exemple, l’argument sera la variable d’octet à convertir en hexadécimal.
import binascii
byte_var = "γιαούρτι - yogurt".encode("utf-8")
print("Byte variable: ", byte_var)
print("Hexadecimal: ", binascii.hexlify(byte_var))
Production :
Byte variable: b'\xce\xb3\xce\xb9\xce\xb1\xce\xbf\xcf\x8d\xcf\x81\xcf\x84\xce\xb9 - yogurt'
Hexadecimal: b'ceb3ceb9ceb1cebfcf8dcf81cf84ceb9202d20796f67757274'
Notez que la valeur de retour de hexlify()
retourne un octet littéral, contrairement à hex()
, qui retourne une chaîne convertie.
Si vous voulez convertir le résultat en une chaîne de caractères, utilisez la fonction decode('utf-8')
.
import binascii
byte_var = "γιαούρτι - yogurt".encode("utf-8")
print("Byte variable: ", byte_var)
print("Hexadecimal: ", "" + binascii.hexlify(byte_var).decode("utf-8"))
Production :
Byte variable: b'\xce\xb3\xce\xb9\xce\xb1\xce\xbf\xcf\x8d\xcf\x81\xcf\x84\xce\xb9 - yogurt'
Hexadecimal: ceb3ceb9ceb1cebfcf8dcf81cf84ceb9202d20796f67757274
Le résultat hexadécimal est maintenant converti en une chaîne de caractères à partir d’un octet littéral.
En résumé, nous avons couvert 2 méthodes de conversion d’un octet en hexadécimal en Python. La méthode la plus simple est d’utiliser la fonction intégrée hex()
pour un octet littéral. Alternativement, la fonction hexlify()
du module binascii
peut aussi être utilisée pour produire la même sortie.
Skilled in Python, Java, Spring Boot, AngularJS, and Agile Methodologies. Strong engineering professional with a passion for development and always seeking opportunities for personal and career growth. A Technical Writer writing about comprehensive how-to articles, environment set-ups, and technical walkthroughs. Specializes in writing Python, Java, Spring, and SQL articles.
LinkedInArticle connexe - Python Bytes
- Comment convertir des octets en entiers en Python 2.7 et 3.x
- Comment convertir des Int en octets en Python 2 et Python 3
- Comment convertir l'Int en binaire en Python
- Comment convertir des octets en chaîne de caractères en Python 2 et Python 3
- Comment convertir une chaîne de caractères en octets en Python
- B devant la chaîne en Python