从模型实例列表中删除重复项

2024-04-26 04:23:15 发布

您现在位置:Python中文网/ 问答频道 /正文

根据帖子:Django comparing model instances for equality

我正在尝试从实例列表中删除重复的实例(这些实例尚未保存,我假设它们的“id”为无)

代码是:

a = list()
a.append(relation_list.pop())
for x in relation_list:
    duplicate = False
    for z in a:
        if z is x:
        #or if z.attrib1 == x.attrib1 and z.attrib2 == x.attrib2:
            duplicate = True
    if not duplicate:
        a.append(x)

但是,如果attribs相等,则不会执行duplicate=True行。你知道吗

我错过了什么?你知道吗

有没有更有效的方法来实现这一点?(灵感来源于this post使用“关系列表”或者不起作用。你知道吗


Tags: django实例intrue列表forif帖子