In this tutorial, we will look at how to convert a hexadecimal number (as a string) to an integer in Python with the help of examples.
How to convert hexadecimal string to integer in Python?
You can use the Python built-in
int() function to convert a hexadecimal string to an integer in Python. Pass the hex string as an argument. The following is the syntax –
# hex string to int int(hex_str, 16)
int() function also takes an optional argument,
base to identify the base of the value passed. For example, use
16 as the base to convert hex string, use
8 as the base for an octal string, etc.
int() function is capable of inferring the base from the string passed, it’s a good practice to explicitly specify the base.
Let’s look at some examples of using the above syntax to convert a hex string to an int.
Hex string with prefix to int
Let’s convert a hex string with the prefix
'0x' to an integer using the
# hex string representing 1024 hex_str = '0x400' # hex to int num = int(hex_str, 16) print(num)
Here we have a hex string representing the number
1024 with the prefix
'0x'. We use the
int() function to convert the hex string to an integer. You can see that we get
1024 as the output.
Hex string without prefix to int
Let’s now try to convert a hex string without a prefix to int using the
int() function. You don’t need to change any arguments as the
int() function is capable to handle the hex string irrespective of the presence of the prefix.
# hex string representing 1024 without '0x' prefix hex_str = '400' # hex to int num = int(hex_str, 16) print(num)
Here we pass the hex string without the
'0x' prefix to the
int() function with
base as 16. We get the same output as above.
For more on the Python
int() function, refer to its documentation.
You might also be interested in –
- Python – Convert Integer to Hexadecimal
- Convert int to bytes in Python
- Python – Convert Integer to Binary String
Subscribe to our newsletter for more informative guides and tutorials.
We do not spam and you can opt out any time.