Converti byte in esadecimale in Python
- Inizializza un byte letterale in Python
-
Usa il metodo
hex()
per convertire un byte in esadecimale in Python -
Usa il modulo
binascii
per convertire un byte in esadecimale in Python
Questo tutorial introdurrà come convertire i byte in esadecimali in Python.
Il tipo di dati byte in Python è una sequenza di byte che può essere memorizzata sul disco come variabile, che può quindi essere codificata e decodificata. Sono dichiarati come una stringa ma preceduti dal carattere b
. I byte accettano caratteri Unicode speciali con prefisso \x
.
Inizializza un byte letterale in Python
Forniremo un esempio di un byte letterale, dichiareremo una stringa con caratteri speciali e utilizzeremo la funzione encode('utf-8')
per convertirlo in un byte literal.
byte_var = "γιαούρτι - yogurt".encode("utf-8")
print(byte_var)
Produzione:
b'\xce\xb3\xce\xb9\xce\xb1\xce\xbf\xcf\x8d\xcf\x81\xcf\x84\xce\xb9 - yogurt'
L’output di encode()
risulterà in un byte letterale preceduto dal carattere b
e i caratteri speciali convertiti in simboli Unicode.
Ora la dichiarazione di un byte è coperta, procediamo con la conversione di un byte in esadecimale.
Usa il metodo hex()
per convertire un byte in esadecimale in Python
Il metodo hex()
introdotto da Python 3.5 lo converte in una stringa esadecimale.
In questo caso, l’argomento sarà di un tipo di dati byte da convertire in esadecimale.
byte_var = "γιαούρτι - yogurt".encode("utf-8")
print("Byte variable: ", byte_var)
print("Hexadecimal: ", byte_var.hex())
Produzione:
Byte variable: b'\xce\xb3\xce\xb9\xce\xb1\xce\xbf\xcf\x8d\xcf\x81\xcf\x84\xce\xb9 - yogurt'
Hexadecimal: ceb3ceb9ceb1cebfcf8dcf81cf84ceb9202d20796f67757274
Usa il modulo binascii
per convertire un byte in esadecimale in Python
Il modulo binascii
Python contiene efficienti funzioni di utilità per operazioni binarie e ASCII.
All’interno di questo modulo, c’è una funzione hexlify()
che restituisce un valore esadecimale dell’argomento dato, che è un valore binario.
In questo esempio, l’argomento sarà la variabile byte da convertire in esadecimale.
import binascii
byte_var = "γιαούρτι - yogurt".encode("utf-8")
print("Byte variable: ", byte_var)
print("Hexadecimal: ", binascii.hexlify(byte_var))
Produzione:
Byte variable: b'\xce\xb3\xce\xb9\xce\xb1\xce\xbf\xcf\x8d\xcf\x81\xcf\x84\xce\xb9 - yogurt'
Hexadecimal: b'ceb3ceb9ceb1cebfcf8dcf81cf84ceb9202d20796f67757274'
Nota che il valore di ritorno di hexlify()
restituisce un byte letterale, a differenza di hex()
, che restituisce una stringa convertita.
Se vuoi convertire il risultato in una stringa, usa la funzione 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"))
Produzione:
Byte variable: b'\xce\xb3\xce\xb9\xce\xb1\xce\xbf\xcf\x8d\xcf\x81\xcf\x84\xce\xb9 - yogurt'
Hexadecimal: ceb3ceb9ceb1cebfcf8dcf81cf84ceb9202d20796f67757274
Ora il risultato esadecimale viene convertito in una stringa da un byte letterale.
In sintesi, abbiamo coperto 2 metodi per convertire un byte in esadecimale in Python. Il modo più semplice è usare la funzione incorporata hex()
in un byte letterale. In alternativa, la funzione hexlify()
del modulo binascii
può anche essere usata per produrre lo stesso output.
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.
LinkedInArticolo correlato - Python Bytes
- Come convertire i byte in numeri interi in Python 2.7 e 3.x
- Come convertire Int in Byte in Python 2 e Python 3
- Converti Int in binario in Python
- Come convertire i byte in stringhe in Python 2 e Python 3
- Come convertire una stringa in byte in Python