Converti esadecimale in decimale in Python

Manav Narula 30 gennaio 2023 Python Python Hex
  1. Usa la funzione int() per convertire gli esadecimali in interi in Python
  2. Usa la funzione ast.literal_eval per convertire esadecimale in intero in Python
Converti esadecimale in decimale in Python

Nel mondo della programmazione ci occupiamo di valori appartenenti a diversi sistemi numerici. Un numero esadecimale è uno di questi sistemi. Viene utilizzato per memorizzare indirizzi di memoria, indirizzi IP e altro.

I valori decimali hanno una base di 10 e i valori esadecimali hanno una base di 16. In Python, i valori esadecimali hanno il prefisso 0x.

In questo tutorial impareremo come convertire i valori esadecimali nei loro numeri interi decimali corrispondenti.

Usa la funzione int() per convertire gli esadecimali in interi in Python

La funzione int() può aiutare a convertire diversi valori in numeri interi decimali. Trasforma la stringa esadecimale sul valore intero corrispondente. Per ottenere ciò, dobbiamo passare il numero e la sua base per convertirlo in un numero intero (Ricorda che la base per i valori esadecimali è 16).

s = "0xffa"
print(int(s, 16))

Produzione:

4090

Usa la funzione ast.literal_eval per convertire esadecimale in intero in Python

La funzione ast.literal_eval() può valutare le stringhe letterali in Python. Può restituire i valori interi quando gli viene passata una stringa esadecimale, come mostrato di seguito:

import ast

s = ast.literal_eval("0xffa")
print(s)

Produzione:

4090

Notare che anche la funzione eval() può eseguire la stessa operazione ma si consiglia di utilizzare ast.literal_eval(). La funzione eval() è molto lenta ed è considerata insicura e pericolosa da usare. Anche ast.literal_value() valuta solo per alcuni tipi di dati Python, a differenza della funzione eval(), che valuta per tutti.

Ti piacciono i nostri tutorial? Iscriviti a DelftStack su YouTube per aiutarci a creare altre guide video di alta qualità. Iscriviti
Autore: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Articolo correlato - Python Hex