0

我有 Python 代码访问数据库中的数据(在 Django 中):

for result in request.user.results.all():
    for word in result.word.all():
        data.append(dict(zip([str(word.type.type)], [str(word.word)])))

它显示“数据”,如下所示:

[{'color': 'blue'}, {'kind': 'pencil'}, {'rating': 'high'}, {'color': 'red'}, {'kind': 'truck'}, {'rating': 'low'} and so on....

我想重写python代码来显示这个:

[{'color': 'blue', 'kind': 'pencil', 'rating': 'high'}, {'color': 'red', 'kind': 'truck', 'rating': 'low'} and so on....

这两个是相同的还是'{'的位置重要?我写了上面的代码,但我不是如何(或者如果我需要)修改它。

4

1 回答 1

2

在我看来,您将单项列表压缩在一起以制作单项字典。我认为你想要的是:

for result in request.user.results.all():
    data.append(dict([(word.type.type, word. word) for word in result.word.all()]))

zip通常用于在您有两个预先存在的列表的情况下制作字典,而不是当您从对象从头开始构建字典时。

于 2012-11-28T17:43:03.143 回答