我目前正在尝试编写代码,用于遍历元组列表,如果名称匹配,则检查谁年龄较大,并从列表中删除较年轻的元组。我遇到了这样一个问题:如果我删除一个元组,即使我更新了变量l,代码仍然会尝试遍历原始范围。 代码:
dads = [('Jim', '30'), ('Jeff', '45'), ('Jim', '35')]
l = len(dads)
for i in range(l):
for j in range(l):
if dads[i][0] == dads[j][0]:
if int(dads[i][1]) > int(dads[j][1]):
dads.pop(j)
l = len(dads)
if j < i:
j -= 1
i -= 1
print(dads)
你需要更新你的循环
最后,这里是代码
您可以使用while循环。大概是这样的:
要使其成为一行:
相关问题 更多 >
编程相关推荐