Python hex()

La funzione hex() di Python viene utilizzata per convertire un intero in una stringa esadecimale minuscola preceduta da “0x”. Possiamo anche passare un oggetto alla funzione hex(), in tal caso l’oggetto deve avere la funzione __index__() definita che restituisce un intero. L’argomento intero di input può essere in qualsiasi base, come binaria, ottale, ecc. Python si occupa di convertirli nel formato esadecimale.

Esempio di hex() in Python

Esaminiamo alcuni esempi semplici di conversione di un intero in numero esadecimale.

print(hex(255))  # decimal
print(hex(0b111))  # binary
print(hex(0o77))  # octal
print(hex(0XFF))  # hexadecimal

Output:

0xff
0x7
0x3f
0xff

hex() di Python con un oggetto

Creiamo una classe personalizzata e definiamo la funzione __index__() in modo che possiamo utilizzare la funzione hex() con essa.

class Data:
    id = 0

    def __index__(self):
        print('__index__ function called')
        return self.id


d = Data()
d.id = 100

print(hex(d))

Output:

__index__ function called
0x64

Puoi consultare lo script completo di Python e altri esempi di Python nel nostro Repository GitHub.

Riferimento: Documentazione Ufficiale

Source:
https://www.digitalocean.com/community/tutorials/python-hex