我想知道我是否有这样的列表清单:
a = [[43,76],[8,3],[22,80],[71,9]]
如果我想检索最后3个子列表中的第二个值,即从索引1到3的第二个值将像这样:
a[1:3][1]:
3
80
9
不,被评估为:
a[1:3][1]
-> [[8, 3], [22, 80], [71, 9]][1]
-> [22, 80]
您想要[x[1] for x in a[1:3]]
同样,如果您实际上需要后三个子列表,而不是第二至第四子列表,则应使用负片:a[-3:]
。即使列表只能是4个长,也更清楚。
您可以在此处使用负切片。
print(*[x[1] for x in a[-3:]],sep='\n') #a[-3:] gives last 3 elements
要检索最后3个子列表中的第二个值,代码如下所示:
[x[1] for x in a[-3:]]
请注意,即使输入列表的长度大于4,这也将起作用。例如:
>>> a = [[43,76],[8,3],[22,80],[71,9],[22,4]]
>>> [x[1] for x in a[-3:]]
[80, 9, 4]
让我知道是否有帮助