Как работает функция hex() в Python

«Шестнадцатеричное» представление — это числовая система, в которой используется основание «16». В этой системе счисления используются цифры от «0» до «9» и буквы/символы от «A» до «F», представляющие значения от «0» до «15». Чтобы преобразовать указанные целые числа в шестнадцатеричное представление, в Python используется встроенная функция «hex()».

В этой статье будет представлено подробное руководство по функции «hex()» с использованием многочисленных примеров из предоставленного контента.

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

В Python функция «hex()» используется для получения шестнадцатеричной формы указанного входного целочисленного значения.

Синтаксис

Ознакомьтесь с синтаксисом описанной выше функции:

hex(число)

В приведенном выше синтаксисе параметр «число» представляет любое положительное или отрицательное целочисленное значение.

Возвращаемое значение

Функция hex() в Python извлекает строку, которая всегда начинается с префикса «0x».

Пример 1. Преобразование целых чисел в шестнадцатеричные числа с помощью функции «hex()».

В приведенном ниже примере кода функция «hex()» используется для преобразования десятичных, двоичных и восьмеричных значений в шестнадцатеричное число.

decimal_value = 455
print(hex(десятичное_значение))
binary_value = 0b11
print(hex(двоичное_значение))
octal_value = 0o66
print(hex(восьмеричное_значение))
hexadecimal_value = 0XAF
print(hex(шестнадцатеричное_значение))

Шестнадцатеричное значение для каждого входного значения было успешно получено:

Пример 2. Преобразование символов ASCII в шестнадцатеричные числа с помощью функции «hex()».

Функцию «hex()» также можно использовать для получения шестнадцатеричного числа символа ASCII и значения с плавающей запятой. Чтобы получить шестнадцатеричные символы ASCII, используется функция «ord()» вместе с функцией «hex()». Чтобы получить шестнадцатеричное число для числа с плавающей запятой, вместо простой функции «hex()» используется функция «float.hex()»:

ascii_value = '$'
print(hex(ord(ascii_value)))
float_value = 45.89
print(float.hex(float_value))

Приведенный выше код получил следующее шестнадцатеричное число:

Пример 3. Использование функции «hex()» с объектом

В приведенном ниже коде класс определен с помощью метода «__index__()», который получает значение «self.z». Созданному объекту присваивается значение «36», которое передается функции «hex()» для получения шестнадцатеричного представления:

class Example:
    z = 0
    def __index__(self):
        print('Function Called!')
        return self.z


obj = sample()
obj.z = 36
print(hex(obj))

Выполнение приведенного выше кода возвращает следующий вывод:

Пример 4. Обработка исключений при использовании функции «hex()»

Исключение «TypeError» может возникнуть, когда значение с плавающей запятой напрямую передается в функцию «hex()». Например, давайте посмотрим на приведенный ниже пример:

Чтобы обработать это исключение, нам нужно использовать блок «try-Exception». Блок try выдает ошибку, а блок исключений обрабатывает исключение с помощью функции float.hex(). Функция «float.hex()» извлекает шестнадцатеричное значение числа с плавающей запятой:

try:
    print(hex(2.5))
except:
    print(float.hex(2.5))

Приведенный выше код выполняет приведенный ниже вывод:

Заключение

Функция «hex()» используется в Python для преобразования определенных целых чисел в представление шестнадцатеричных чисел. Мы можем использовать эту функцию для преобразования целых чисел, символов ASCII и других в шестнадцатеричные числа. Значение с плавающей запятой можно преобразовать в шестнадцатеричное с помощью функции float.hex(). В этом блоге продемонстрировано подробное руководство по функции «hex()» с использованием многочисленных примеров.