Python hex()

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