对于expample,我有一些列表:
[date1, time1, nickname1, point1 = 56.341708,43.948463]
[date2, time2, nickname2, point2 = 56.321795,43.9996]
[date3, time3, nickname3, point1 = 56.341708,43.948463]
[date4, time4, nickname4, point1 = 56.341708,43.948463]
[date5, time5, nickname5, point3 = 56.236278,43.960233]
[date6, time6, nickname7, point3 = 56.236278,43.960233]
我需要删除所有以前的名单,如果下面的名单有相同的点。 正确的输出应该是:
[date2, time2, nickname2, point2 = 56.321795,43.9996]
[date4, time4, nickname4, point1 = 56.341708,43.948463]
[date6, time6, nickname7, point3 = 56.236278,43.960233]
我的代码删除了一些列表,但它没有完全完成任务:
checked3-列表列表 选中4-点列表
代码:
r = -1
v = -2
k = -len(checked3)
try:
while v > k:
if str(checked4[r]) in checked3[v]:
checked3.pop(v)
print ('now', checked3)
v = v - 1
else:
print ('else', checked3)
r = r - 1
except:
pass
你能帮我一下吗,我怎样才能得到正确的输出?你知道吗
有一种方法:
为了简化解释,我用一个列表进行了模拟,其中字符串表示无关紧要的字段,元组表示点。你知道吗
使用字典理解,为每一点创建一个记录
从后面倒着走。我们通过改变点对应的值将其设置为“candelete”来标记删除。当我们遇到与迭代中的项相对应的值“candelete”时,我们将其从原始列表中删除。你知道吗
此时ListofList包含您想要的内容。你知道吗
这应该管用
相关问题 更多 >
编程相关推荐