Как преобразовать мой шестнадцатеричный адрес?

У меня есть следующий шестнадцатеричный номер 0x00000000004087b8, и мне нужно преобразовать его в 0x4087b8, чтобы я мог добавить его в свой список. У кого-нибудь есть идеи, как я могу сделать это преобразование в python?


person sarah123    schedule 14.12.2017    source источник
comment
Может быть такого рода вещи?   -  person neophlegm    schedule 15.12.2017
comment
Я бы предположил, что это не сработает, поскольку strip также удалит 0 перед x. Ей придется сначала разделить его, а затем раздеть.   -  person Saravana Kumar    schedule 15.12.2017
comment
что такое 0x00000000004087b8 ?? Строка?   -  person juanpa.arrivillaga    schedule 15.12.2017
comment
Вы понимаете, что два шестнадцатеричных числа в ваших вопросах имеют разные значения на 64-битной машине? Отбрасывание нулевого префикса для перехода к другой архитектуре (например, от 64 до 32 или...)?   -  person Frank C.    schedule 19.10.2018


Ответы (2)


Я предполагаю, что у вас есть строка, я рекомендую сделать это так:

fixed_address = hex(int(address, 16))
person Idanushka    schedule 14.12.2017

Может быть, что-то вроде этого сработает?

hex_num = "0x00000000004087b8"
hex_num = "0x{}".format(hex.split('x')[1].lstrip('0'))
person Saravana Kumar    schedule 14.12.2017
comment
Спасибо что подметил это. Забыл цитаты. Виноват. Попробуй сейчас. - person Saravana Kumar; 15.12.2017