Ebben a bejegyzésben megnézzük, hogyan konvertáljunk egész számot hexadecimális karakterlánccá Pythonban.
hex() függvény
Az egész szám hexadecimális karakterlánccá alakításának pythoni módja a beépített hex()
függvény használata. Ez kisbetűvel adja vissza a hexadecimális karakterláncot, amelynek előtagja 0x
.
1
2
3
4
5
6
7
8
|
if __name__ == ‘__main__’:
i = 4095
h = hex(i)
print(h) # ‘0xfff’
|
A nagybetűs hexadecimális stringhez vagy az előtag eltüntetéséhez használjuk az alább tárgyalt megoldások bármelyikét.
format() függvény
Egy másik lehetőség a beépített format()
függvény használata, amely egy egész számot hexadecimális karakterlánccá tud alakítani a x
formátum specifikáció segítségével. A #x
használata esetén a hexadecimális karakterlánc elé 0x
kerül. Ha a X
vagy #X
értéket használja, akkor nagybetűs hexadecimális karakterláncot kaphat.
1
2
3
4
5
6
7
|
if __name__ == ‘__main__’:
i = 4095
h = (format(i, ‘#x’), format(i, ‘#X’), format(i, ‘x’), format(i, ‘X’))
print(h) # (‘0xfff’, ‘0XFFF’, ‘fff’, ‘FFF’)
|
f-strings
A Python 3.6-tól kezdve használhatunk f-stringeket. Ezt úgy lehet megtenni, hogy a string literál elé f
vagy F
karakterláncot írunk. A string literálnak a {}
szögletes zárójelek közé kell kerülnie, és tartalmaznia kell az egész számot, amelyet a x
formázási specifikáció követ, kettősponttal elválasztva :
.
A hexadecimális string 0x
előtagja a #x
, a nagybetűs hexadecimális stringhez pedig a X
vagy #X
. Így nézne ki a kód:
1
2
3
4
5
6
7
|
if __name__ == ‘__main__’:
i = 4095
h = (f'{i:#x}’, f'{i:#X}’, f'{i:x}’, f'{i:X}’)
print(h) # (‘0xfff’, ‘0XFFF’, ‘fff’, ‘FFF’)
|