HowTo: Python Convert a String Into Integer

How do I convert a string such as x=’12345′ to an integer (int) under Python programming language? How can I parse python string to integer?

You need to use int(s) to convert a string or number to an integer. For testing purpose, defined a string called x=’123456′, run:

You may also need to use float(s) to convert a string or number to a floating point number or combination of both as follows:


int(s)
float(s)
int(float(s))

Examples

x = '123456'

Confirm the object type:

type(x)

Sample outputs:

<type 'str'>

Convert a string to an int and store it to i, run:

i = int(x)
type(i)

Sample outputs:

<type 'int'>

However, the following string to int will fail:

x='123456.334'
y=int(x)

Sample outputs:

ValueError                                Traceback (most recent call last)

/home/vivek/ in ()

ValueError: invalid literal for int() with base 10: '123456.334'

Try the following solution:

x='123456.334'
y=int(float(x))
type(x)
type(y)
print y
a='12.5'
b='13.5'
print( int(float(a))+ int(float(b)) )

Finally, you can also use floating point class for decimal arithmetic:

x='123.34'
import decimal
i=int(Decimal(x))
print(i)
type(i)

Posted by: SXI ADMIN

The author is the creator of SXI LLC and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.