代码之家  ›  专栏  ›  技术社区  ›  Asara

在python/django中创建对象列表的最佳方法方法方法输出

  •  0
  • Asara  · 技术社区  · 6 年前

    我有这个代码:

    objects = Object.objects.all()
    
    datalist = list()
        for object in objects:
            datalist.append(object.data())
    
    return datalist
    

    有没有更好的方法来创建这个数据列表?有 values_list() 方法,但它只适用于对象字段,而不适用于方法。

    所以我想知道,是否有更好的方法可以创造 datalist 也许是一行,而不是三行?

    1 回复  |  直到 6 年前
        1
  •  0
  •   willeM_ Van Onsem    6 年前

    你可以使用 列表理解 :

    return [object.data() for object in Object.objects.all()]

    或者结合 map list :

    return list(map(Object.data, Object.objects.all()))

    但我不太清楚 .data() 在这里做,因此可能有更好(更快、更优雅等)的方法来做同样的事情。