Skip to content
Related Articles

Related Articles

hex() function in Python
  • Difficulty Level : Easy
  • Last Updated : 29 Apr, 2021

hex() function is one of the built-in functions in Python3, which is used to convert an integer number into it’s corresponding hexadecimal form.

Syntax : 

hex(x) 
Parameters : 
x - an integer number (int object)
Returns :  Returns hexadecimal string.

Errors and Exceptions : 

TypeError :  Returns TypeError when anything other than
             integer type constants are passed as parameters.

  
Code #1 : Illustrates use of hex() function. 

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))

Output : 



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

Code #2: Demonstrate TypeError when floating point values are passed as parameter. 

Python3




# hex() accepts only integer vaues 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.
'''

Output : 

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

  
Applications : 
hex() is used in all the standard conversions. For example conversion of hexadecimal to decimal, hexadecimal to octal, hexadecimal to binary.
 

Code #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"))

Output : 

input variant 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

input variant 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

 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course

My Personal Notes arrow_drop_up
Recommended Articles
Page :