14

Possible Duplicate:
Python - Parse String to Float or Int

How can I convert '1.03' (string) to a number in Python, preferably a decimal ?

0

2 Answers 2

29

Just use float()

>>> float('1.03')
1.03

If you need an actual Decimal type, use the decimal module:

>>> from decimal import *
>>> Decimal('1.03')
Decimal('1.03')

In general, using floats will be easier for you, but you pay for that with the inexact precision that comes with floats.

Sign up to request clarification or add additional context in comments.

1 Comment

Of course, a float isn't a decimal and will have trouble with some decimal numbers.
7

float, int, and decimal can automatically convert valid strings.

For example:

float('1.03')

1 Comment

int('1.03') is going fail, though. You'll need something like int(float('1.03')) for that.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.