我有一个列表。列表的前4个元素是:
H=[' 2 t[0,1] B 1e-08 n',
' 3 t[0,2] B 1e-09 n',
' 4 t[0,3] B 1e-2 n',
' 5 t[0,4] B 1e-08 n']
如何获得以下信息:
输出:
H=[1e-08,1e-09,1e-2,1e-08]
strip()
结束空白的字符串,然后拆分并获取所需的列:
H = [' 2 t[0,1] B 1e-08 n',
' 3 t[0,2] B 1e-09 n',
' 4 t[0,3] B 1e-2 n',
' 5 t[0,4] B 1e-08 n'
]
[s.split()[3] for s in map(str.strip, H)]
# ['1e-08', '1e-09', '1e-2', '1e-08']
如果想要实际数字而不是字符串,可以将值传递给float()
[float(s.split()[3]) for s in map(str.strip, H)]
# [1e-08, 1e-09, 0.01, 1e-08]