我有一个看起来像这样的整数列表:
["1e-04", "1e-06", "1e-08", "1e-10", "1e-12"]
我需要将此字符串列表转换为普通数字列表,但以 10 为底让我卡住了。有什么建议么?谢谢。
>>> 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]
我会使用map
和float
:
>>> 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]
见地图。
a=[eval(i) for i in a] # 这里 a 是列表
这个列表理解将解决它