Python: Converting string into decimal number

If you want the result as the nearest binary floating point number use float:

result = [float(x.strip(' "')) for x in A1]

If you want the result stored exactly use Decimal instead of float:

from decimal import Decimal
result = [Decimal(x.strip(' "')) for x in A1]

If you are converting price (in string) to decimal price then....

from decimal import Decimal

price = "14000,45"
price_in_decimal = Decimal(price.replace(',','.'))

No need for the replace if your strings already use dots as a decimal separator


You will need to use strip() because of the extra bits in the strings.

A2 = [float(x.strip('"')) for x in A1]

use the built in float() function in a list comprehension.

A2 = [float(v.replace('"','').strip()) for v in A1]


A2 = [float(x.strip('"')) for x in A1] works, @Jake , but there are unnecessary 0s