web-dev-qa-db-ja.com

Python:文字列を10進数に変換

pythonこの形式の文字列のリストがあります:

A1 = [' "29.0" ',' "65.2" ',' "75.2" ']

これらの文字列を10進数に変換して、リスト要素で算術演算を実行するにはどうすればよいですか?

21
Sankar A

結果を最も近い2進浮動小数点数として使用する場合は、floatを使用します。

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

結果を正確に保存する場合は、Decimalの代わりに float を使用します。

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

文字列に余分なビットがあるため、strip()を使用する必要があります。

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

リスト内包表記で組み込みのfloat()関数を使用します。

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

3
farzad

価格(文字列)を小数価格に変換する場合は...

from decimal import Decimal

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

A2 = [float(x.strip('"')) for x in A1]は動作しますが、@ Jakeですが、不要な0があります

1
tekknolagi