Python Шестнадцатеричный
как преобразовать десятичное число в шестнадцатеричное в следующем формате (по крайней мере две цифры, с нулевым дополнением, без префикса 0x)?
вход: 255
выход:ff
вход: 2
выход: 02
пробовал hex(int)[2:]
но кажется, что он отображает первый пример, но не второй.
3 ответа:
использовать
format()
функции С .>>> format(255, '02x') 'ff' >>> format(2, '02x') '02'
The
02
говоритformat()
чтобы использовать по крайней мере 2 цифры и использовать нули, чтобы заполнить его по длине,x
означает шестнадцатеричное число в нижнем регистре.The Формат Спецификации Мини-Язык также дает вам
X
для шестнадцатеричного вывода в верхнем регистре, и вы можете префикс ширины поля с#
включить0x
или0X
префикс (в зависимости от wether вы использовалиx
илиX
как праматерия). Просто примите во внимание, что вам нужно настроить ширину поля, чтобы учесть эти дополнительные 2 символа:>>> format(255, '02X') 'FF' >>> format(255, '#04x') '0xff' >>> format(255, '#04X') '0XFF'