La función hex() es una de las funciones integradas en Python3, que se utiliza para convertir un número entero en su forma hexadecimal correspondiente.
Sintaxis:
hex(x) Parameters : x - an integer number (int object) Returns : Returns hexadecimal string.
Errores y excepciones:
TypeError : Returns TypeError when anything other than integer type constants are passed as parameters.
Código #1: ilustra el uso de la función hex() .
Python3
# Python3 program to illustrate # hex() function print("The hexadecimal form of 23 is " + hex(23)) print("The hexadecimal form of the " "ascii value is 'a' is " + hex(ord('a'))) print("The hexadecimal form of 3.9 is " + float.hex(3.9))
Producción :
The hexadecimal form of 23 is 0x17 The hexadecimal form of the ascii value os 'a' is 0x61 The hexadecimal form of 3.9 is 0x1.f333333333333p+1
Código #2: Demuestre TypeError cuando los valores de coma flotante se pasan como parámetro.
Python3
# hex() accepts only integer values as parameters print("The hexadecimal form of 11.1 is " + hex(11.1)) ''' # The hexadecimal conversion of floating # point integers can be done using the # function float.hex() print("The hexadecimal form of 11.1 is " + float.hex(11.1)) # Output : # The hexadecimal form of 11.1 is 0x1.6333333333333p+3 # Similarly, float.hex() throws a TypeError # when integer values are passed in it. '''
Producción :
Traceback (most recent call last): File "/home/7e1ac7e34362fd690cdb72cf294502e1.py", line 2, in print("The hexadecimal form of 11.1 is "+hex(11.1)) TypeError: 'float' object cannot be interpreted as an integer
Aplicaciones:
hex() se usa en todas las conversiones estándar . Por ejemplo, conversión de hexadecimal a decimal, de hexadecimal a octal, de hexadecimal a binario.
Código #3:
Python3
# TypeConversion from decimal with base 10 # to hexadecimal form with base 16 # Taking input from user # an integer with base 10 number = int(input("Enter a number with base 10\n")) # The choices present to the user print("a. Decimal to Hexadecimal ") print("b. Decimal to Octal") print("c. Decimal to Binary") # taking user input print("Enter your choice :- ") choice = input() # Running a variable choice # Hexadecimal form if choice # is set to 'a' if choice is 'a': # lstrip helps remove "0x" from the left # rstrip helps remove "L" from the right, # L represents a long number print("Hexadecimal form of " + str(number) + " is " + hex(number).lstrip("0x").rstrip("L")) if choice is 'b': # Octal representation is done # by adding a prefix "0o" print("Octal form of " + str(number) + " is " + oct(number).lstrip("0o").rstrip("L")) if choice is 'c': # Binary representation is done by # the addition of prefix "0b" print("Binary form of " + str(number) + " is "+bin(number).lstrip("0b").rstrip("L"))
Producción :
variante de entrada a)
Enter a number with base 10 123 a. Decimal to Hexadecimal b. Decimal to Octal c. Decimal to Binary Enter your choice:- a Hexadecimal form of 123 is 7b
variante de entrada b)
Enter a number with base 10 123456789 a. Decimal to Hexadecimal b. Decimal to Octal c. Decimal to Binary Enter your choice:- a Hexadecimal form of 123456789 is 75bcd15