У меня возникли трудности с изменением гекса на int / char (предпочтительно char).Через сайт;http://home2.paulschou.net/tools/xlate/ Я ввожу шестнадцатеричный C0A80026 в шестнадцатеричное поле, в поле DEC / CHAR он правильно выводит IP-адрес, который я ожидал в нем содержать.
Эти данные извлекаются из внешней базы данных иЯ не знаю, как он сохраняется, поэтому все, с чем мне нужно работать, это сама шестнадцатеричная строка.
Я пытался использовать функцию binascii.unhexlify
, чтобы посмотреть, смогу ли я ее декодировать, но боюсь, что могуне достаточно хорошо разбираюсь в гексагоне, чтобы понять, что я делаю.
Попытка печати с использованием только приведения типа int () также не дала требуемых результатов.Мне нужно каким-то образом преобразовать эту шестнадцатеричную строку (или одну подобную) в исходный IP-адрес.
ОБНОВЛЕНИЕ: для тех, кто сталкивается с этим в будущем, я слегка изменил приведенный ниже ответ, чтобы получить точную распечатку в видеIP с помощью;
dec_output = str(int(hex_input[0:2], 16)) + "." + str(int(hex_input[2:4], 16)) + "." + str(int(hex_input[4:6], 16)) + "." + str(int(hex_input[6:8], 16))