Вот мой простой код.
[2:].upper предназначен для удаления " 0x" символов из выходного значения.
Код: Выделить всё
bnum = "0100000000000000000000000000000000000000000000000000000000000000"
hdnum = hex(int((bnum),2))[2:].upper()
print("Hex Number: ",hdnum)
Output: ('Hex Number: ', '4000000000000000')
Однако, когда я просто изменил значение bnum, установив 1-й бит на «1», а остальные на « 0")
Код: Выделить всё
bnum = "1000000000000000000000000000000000000000000000000000000000000000"
hdnum = hex(int((bnum),2))[2:].upper()
print("Hex Number: ",hdnum)
Output: ('Hex Number: ', '8000000000000000L')
Могу ли я узнать, что не так с моим Использование функции hex() и как это исправить? Спасибо!
Подробнее здесь: https://stackoverflow.com/questions/692 ... -starts-wi