2012-10-21 43 views

回答

7
>>> import ast 
>>> L = ["1e-04", "1e-06", "1e-08", "1e-10", "1e-12"] 
>>> [ast.literal_eval(x) for x in L] 
[0.0001, 1e-06, 1e-08, 1e-10, 1e-12] 

或者乾脆..

>>> [float(x) for x in L] 
[0.0001, 1e-06, 1e-08, 1e-10, 1e-12] 
+2

任何解釋你爲什麼向我們展示'ast.literal_eval'? – dav1d

+2

因爲也許對未來的讀者來說,他們並非都是浮動的。 'literal_eval'將保留整數和浮點數的混合 – wim

+1

我會使用'literal_eval',但可能值得指出的是,它不會幫助浮點數可以採用的「特殊」值,例如float(' '''''literal_eval'('nan')'(完全不出所料)中斷... –

1

我會使用mapfloat

>>> values_as_strings = ["1e-04", "1e-06", "1e-08", "1e-10", "1e-12" 
>>> values_as_floats = map(float, values_as_strings) 
>>> print values_as_floats 
[0.0001, 1e-06, 1e-08, 1e-10, 1e-12] 

map

0

A = [EVAL(i)對於我在這裏一個#是列表

這個列表解析會解決它

相關問題