Hogyan elemezhetek egy karakterláncot float vagy int értékre?

Pythonban hogyan tudok egy olyan numerikus karakterláncot, mint az "545.2222" a megfelelő lebegőértékre, 545.2222, elemezni? Vagy a "31" karakterláncot egy egész számra, 31?

Csak azt szeretném tudni, hogyan lehet egy float str-t float-ra, és (külön-külön) egy int str-t int-re elemezni.

Megoldás
>>> a = "545.2222"
>>> float(a)
545.22220000000004
>>> int(float(a))
545
Kommentárok (7)

A codelogic és harley felhasználóknak igazuk van, de ne feledd, hogy ha tudod, hogy a karakterlánc egész szám (például 545), akkor hívhatod az int("545") parancsot anélkül, hogy először lebegőre kellene átváltani.

Ha a karakterláncok listában vannak, használhatod a map függvényt is.

>>> x = ["545.0", "545.6", "999.2"]
>>> map(float, x)
[545.0, 545.60000000000002, 999.20000000000005]
>>>

Ez csak akkor jó, ha mind ugyanolyan típusúak.

Kommentárok (1)

float("545.2222") és int(float("545.2222"))

Kommentárok (1)