Python 访问上一个列表的列表项
我在python 3.x中有一个列表:Python 访问上一个列表的列表项,python,python-3.x,Python,Python 3.x,我在python 3.x中有一个列表: deliveryData=[[1,5,3],[2,7,8],[8,10,5]] 我想将当前列表(例如[2,7,8])中的各个项目与以前的列表(例如[1,5,3])进行比较/操作。我该怎么做 使用下面的示例代码测试此功能: deliveryData=[[1,5,3],[2,7,8],[8,10,5]] for data in deliveryData[1:]: print(data) print(data[-1]) 我在想,当我在列表中时
deliveryData=[[1,5,3],[2,7,8],[8,10,5]]
我想将当前列表(例如[2,7,8]
)中的各个项目与以前的列表(例如[1,5,3]
)进行比较/操作。我该怎么做
使用下面的示例代码测试此功能:
deliveryData=[[1,5,3],[2,7,8],[8,10,5]]
for data in deliveryData[1:]:
print(data)
print(data[-1])
我在想,当我在列表中时,我可以使用数据[-1]
访问列表[1,5,3]
,但这是不对的
任何人都可以提供任何建议吗?只需访问
i-1
,查看以前的列表,从i=1
开始:
deliveryData=[[1,5,3],[2,7,8],[8,10,5]]
for i in range(1, len(deliveryData)):
print("Current:", deliveryData[i])
print("Previous:", deliveryData[i-1])
哪些产出:
Current: [2, 7, 8]
Previous: [1, 5, 3]
Current: [8, 10, 5]
Previous: [2, 7, 8]
deliveryData[-1]
将始终返回deliveryData
中的最后一个元素
使用以下内容,而不是使用索引:
for p_data, c_data in zip(deliveryData, deliveryData[1:]):
print(p_data, c_data)
# [1, 5, 3] [2, 7, 8]
# [2, 7, 8] [8, 10, 5]
与@RoadRunner的答案不同,这将在内存中创建一个额外的列表(用于保存
deliveryData[1:][/code>)。这可能是问题,也可能不是问题 你不能像这样索引它吗:
deliveryData=[[1,5,3],[2,7,8],[8,10,5]]
for data in deliveryData[1:]:
print(data)
print(deliveryData[deliveryData.index(data)-1])
如果要访问deliveryData中的前两个列表:
for i in deliveryData[:-1]:
print(i)
谢谢你的贴士!
for i in deliveryData[:-1]:
print(i)