在Python中自动处理科学计数法的数字
我正在从质谱仪读取数据文件,里面有很多数字是以科学计数法表示的,比如:
4096.26 5.785e1
4096.29 5.784e1
4096.31 5.784e1
4096.33 5.784e1
4096.36 5.783e1
我打算使用分割函数来提取这两个数字,但我想知道有没有什么函数可以把第二列转换成Python中的浮点数?我知道可以用正则表达式来实现,但我觉得可能还有更好的方法。
谢谢!
1 个回答
39
float()
这个构造函数可以接受用e
表示法写的字符串:
>>> float("5.785e1")
57.85
所以你可以直接使用map(float, line.split())
来把一行文本转换成一个浮点数的列表。