A função hex() do Python é usada para converter um número inteiro em uma string hexadecimal em minúsculas, prefixada com “0x”. Também podemos passar um objeto para a função hex(), nesse caso, o objeto deve ter a função __index__()
definida, que retorna um número inteiro. O argumento inteiro de entrada pode estar em qualquer base, como binária, octal, etc. O Python se encarregará de convertê-los para o formato hexadecimal.
Exemplo de hex() em Python
Vamos dar uma olhada em alguns exemplos simples de conversão de inteiro para número hexadecimal.
print(hex(255)) # decimal
print(hex(0b111)) # binary
print(hex(0o77)) # octal
print(hex(0XFF)) # hexadecimal
Resultado:
0xff
0x7
0x3f
0xff
hex() do Python com objeto
Vamos criar uma classe personalizada e definir a função __index__() para que possamos usar a função hex() com ela.
class Data:
id = 0
def __index__(self):
print('__index__ function called')
return self.id
d = Data()
d.id = 100
print(hex(d))
Resultado:
__index__ function called
0x64
Você pode conferir o script completo em Python e mais exemplos de Python em nosso Repositório no GitHub.
Referência: Documentação Oficial
Source:
https://www.digitalocean.com/community/tutorials/python-hex