假设您有一个字符串列表列表:
LoL=[
['10', '101', '86', '37', '0', '45.6', '1.136', '38', '1'],
['2', '108', '62', '32', '56', '25.2', '0.128', '21', '0'],
['3', '122', '78', '0', '0', '23', '0.254', '40', '0'],
]
您可以获得nth
每个子列表的元素如下所示:
>>> [float(sl[2]) for sl in LoL]
[86.0, 62.0, 78.0]
如果您有 csv 文件,请使用csv模块 https://docs.python.org/3/library/csv.html做完全相同的事情:
(在命令提示符处):
$ cat file.csv
10,101,86,37,0,45.6,1.136,38,1
2,108,62,32,56,25.2,0.128,21,0
3,122,78,0,0,23,0.254,40,0
Python:
import csv
with open('file.csv') as f:
items=[float(row[2]) for row in csv.reader(f)]
>>> items
[86.0, 62.0, 78.0]
所以——底线:
- 请用
csv
or pandas
代替.split(',')
以便您可以正确处理引用的 csv 和其他特殊情况;
- Use a
with
上下文管理器,以便文件在块末尾自动关闭;
- A
csv
文件与列表的列表非常相似,通常可以以相同的方式处理。