我有这个代码:
objects = Object.objects.all()
datalist = list()
for object in objects:
datalist.append(object.data())
return datalist
有没有更好的方法来创建此数据列表?查询集有values_list()
方法,但它仅适用于对象字段,而不适用于方法。
所以我想知道,是否有更好的 pythonic 方法可以在一行而不是 3 行中创建datalist
?
您可以使用列表推导:
return [object.data() for object in Object.objects.all()]
或结合map
和list
:
return list(map(Object.data, Object.objects.all()))
但我并不清楚.data()
在这里做什么,因此可能有更好(更快、更优雅等(的方式来做同样的事情。