Converter hexadecimal em decimal em Python
-
Use a função
int()
para converter hexadecimal em inteiro em Python -
Use a função
ast.literal_eval
para converter hexadecimal em inteiro em Python
No mundo da programação, lidamos com valores pertencentes a diferentes sistemas numéricos. Um número hexadecimal é um desses sistemas. Ele é usado para armazenar endereços de memória, endereços IP e muito mais.
Os valores decimais têm uma base de 10 e os valores hexadecimais têm uma base de 16. Em Python, os valores hexadecimais são prefixados com 0x
.
Neste tutorial, aprenderemos como converter valores hexadecimais em seus números inteiros decimais correspondentes.
Use a função int()
para converter hexadecimal em inteiro em Python
A função int()
pode ajudar na conversão de diferentes valores em inteiros decimais. Ele typecast a string hexadecimal para seu valor inteiro correspondente. Para isso, temos que passar o número e sua base para convertê-lo em um inteiro (lembre-se que a base para valores hexadecimais é 16).
s = "0xffa"
print(int(s, 16))
Resultado:
4090
Use a função ast.literal_eval
para converter hexadecimal em inteiro em Python
A função ast.literal_eval()
pode avaliar literais de string em Python. Ele pode retornar os valores inteiros quando uma string hexadecimal é passada para ele, conforme mostrado abaixo:
import ast
s = ast.literal_eval("0xffa")
print(s)
Resultado:
4090
Observe que a função eval()
também pode realizar a mesma operação, mas é recomendado usar o ast.literal_eval()
. A função eval()
é muito lenta e é considerada insegura e perigosa de usar. O ast.literal_value()
também avalia apenas para alguns dos tipos de dados Python, ao contrário da função eval()
, que avalia para todos.
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