Объявление переменной как шестнадцатеричной в Python
У меня есть переменная
s=64
Эта переменная находится в шестнадцатеричном формате. Но Python принимает это как десятичное число. Как объявить его как шестнадцатеричную переменную?
Я знаю, чтобы объявить что-то шестнадцатеричным, мы используем
s=0x64
Но у меня есть только
s=64
Как я могу это сделать?
Ответы
Число 64
в шестнадцатеричном формате (с основанием 16) равно 100
. Чтобы получить ответ, вы должны использовать комбинацию hex () , int () и str (). Если вы начинаете с s = 64
и хотите получить в итоге s = 100
десятичное значение 0x64
, рассмотрите этот код:
s = 64
s = int(str(s), 16)
Если вам нужно что-то еще, поясните, что, и обратите внимание, что вы можете попытаться добиться этого самостоятельно с помощью некоторой комбинации hex (), int () и str ().
Я думаю, что этого чего-то не хватает в вашей теории кода или в вашем вопросе.
Одно дело ценность, а другое - представление (интерпретация) . Таким образом, значение равно 100 (десятичное), но его можно увидеть ( преобразовать ) как десятичное или шестнадцатеричное (или как вам нравится):
>>> s=0x64
>>> s
100
>>> hex(s)
'0x64'
>>> h = int(str(0x64), 16)
>>> h
256
Python сохраняет целое число как десятичное (по умолчанию). Если вы хотите иметь число, которое действует как шестнадцатеричное, вы должны закодировать свой собственный класс и использовать процедуры преобразования, которые я показал выше.