gpt4 book ai didi

python - 在 Python 中访问列表

转载 作者:太空宇宙 更新时间:2023-11-04 08:13:58 24 4
gpt4 key购买 nike

我有两个这样的列表

Nodelist1=[[['B', 10], ['IN', 1000]], [['C', 15], ['OUT', 1001]], [['F', 30], ['IN', 1100]]]
Nodelist2= [[['G', 20], ['IN', 1000, 'OUT', 1111]], [['D', 25], ['INWARD', 1]]]

我想做的是像这样比较这两个列表

if len(Nodelist1[i][1])==len(Nodelist2[j][1]) 

如果条件为真,那么我想删除 Nodelist1[i][0]这是 ['B', 10]来自 Nodelist1Nodelist2[j][1]这是 ['D', 25]来自 Nodelist2 .

那我应该有

Nodelist1 as [[['C', 15], ['OUT', 1001]], [['F', 30], ['IN', 1100]]]
Nodelist2 as [[['G', 20], ['IN', 1000, 'OUT', 1111]]]

我的代码是这样的:

   if len(Nodelist1)>len(Nodelist2):
for i in range(len(Nodelist1)):
for j in range(len(Nodelist2)):
if len(Nodelist1[i][1])==len(Nodelist2[j][1]):
if Nodelist1[i][1]==Nodelist2[j][1]:
Nodelist1.remove(Nodelist1[i])
Nodelist2.remove(Nodelist2[j])
else:
Nodelist1.remove(Nodelist1[i])
Nodelist2.remove(Nodelist2[j])

它给我一个错误:

if len(Nodelist1[i][1])==len(Nodelist2[j][1]):
IndexError: list index out of range

最佳答案

您在循环遍历列表时从列表中删除元素。所以当你移动到列表的末尾时,没有足够的元素。并且索引访问将引发 IndexError。

关于python - 在 Python 中访问列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17704794/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com