convert octal string to integer in python

Python – Convert Octal String to Integer

In this tutorial, we will look at how to convert an octal number (as a string) to an integer in Python with the help of examples.

How to convert octal string to integer in Python?

convert octal string to integer in python

You can use the Python built-in int() function to convert an octal string to an integer in Python. Pass the oct string as an argument. The following is the syntax –

# oct string to int
int(oct_str, 8)

The 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.

Although, the int() function is capable of inferring the base from the string passed, it’s a good practice to explicitly specify the base.

Examples

Let’s look at some examples of using the above syntax to convert an oct string to an int.

Oct string with prefix to int

Let’s convert an octal number (as a string) with the prefix '0o' to an integer using the int() function.

# oct string representing 1024
oct_str = '0o2000'
# oct to int
num = int(oct_str, 8)
print(num)

Output:

1024

Here we have an oct string representing the number 1024 with the prefix '0o'. We use the int() function to convert the oct string to an integer. You can see that we get 1024 as the output.

📚 Data Science Programs By Skill Level

Introductory

Intermediate ⭐⭐⭐

Advanced ⭐⭐⭐⭐⭐

🔎 Find Data Science Programs 👨‍💻 111,889 already enrolled

Disclaimer: Data Science Parichay is reader supported. When you purchase a course through a link on this site, we may earn a small commission at no additional cost to you. Earned commissions help support this website and its team of writers.

Oct string without prefix to int

Let’s now try to convert an oct 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 oct string irrespective of the presence of the prefix.

# oct string representing 1024 without '0o' prefix
oct_str = '2000'
# oct to int
num = int(oct_str, 8)
print(num)

Output:

1024

Here we pass the oct string without the '0o' prefix to the int() function with base as 8. We get the same output as above.

For more on the Python int() function, refer to its documentation.

You might also be interested in –


Subscribe to our newsletter for more informative guides and tutorials.
We do not spam and you can opt out any time.


Author

  • Piyush Raj

    Piyush is a data professional passionate about using data to understand things better and make informed decisions. He has experience working as a Data Scientist in the consulting domain and holds an engineering degree from IIT Roorkee. His hobbies include watching cricket, reading, and working on side projects.

Scroll to Top