Функция hex() в Python — что делает и примеры преобразования

В этом уроке вы узнаете, как использовать функцию Python hex() для преобразования целого числа в шестнадцатеричную строку с префиксом 0x.

Что такое функция Python hex()?

Функция hex() принимает целое число и преобразует его в строчную шестнадцатеричную строку с префиксом 0x.

Вот синтаксис функции hex():

hex(x)

В следующем примере функция hex() используется для преобразования x из целого числа(10) в строчную шестнадцатеричную строку с префиксом 0x:

x = 10
result = hex(10)
print(result)  # 👉 0xa
print(type(result))  # 👉 <class 'str'>

Если x не является целым числом, то должен быть __index__(), который возвращает целое число. Например:

class MyClass:
    def __init__(self, value):
        self.value = value

    def __index__(self):
        return self.value


result = hex(MyClass(10))
print(result) # 👉 0xa

Выход:

0xa

Как это работает.

  • Сначала определите класс MyClass с атрибутом value.
  • Во-вторых, инициализируйте значение в методе __init__().
  • В-третьих, реализуйте метод __index__(), который возвращает значение.
  • Наконец, создайте новый экземпляр MyClass и передайте его функции hex().

Другой способ преобразования целого числа в заглавную или строчную шестнадцатеричную строку — использовать f-строки с форматом. Например:

a = 10
h1 = f'{a:#x}'
print(h1)  # 👉 0xa

h2 = f'{a:x}'
print(h2)  # 👉 a

h3 = f'{a:#X}'
print(h3)  # 👉 0XA

h3 = f'{a:X}'
print(h3)  # 👉 A

Похожие посты
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *