python - 循环遍历 Python 和 Django 中的列表字典列表
问题描述
我有一个返回如下结果的查询集:
defaultdict(<type 'list'>,
{
123:
[
{'field1': 123, 'field2': 'August', 'field3': 50},
{'field1': 123, 'field2': 'September', 'field3': 25},
{'field1': 123, 'field2': 'October', 'field3': 70}
],
789:
[
{'field1': 789, 'field2': 'August', 'field3': 80},
{'field1': 789, 'field2': 'September', 'field3': 22},
{'field1': 789, 'field2': 'October', 'field3': 456}
],
})
我正在尝试遍历模板中的列表,但我只能获得要显示的密钥,例如:
{% for each in results %}
{{ each }}<br>
{% endfor %}
回报:
123
789
我试过循环遍历results.items
,它什么也没返回。我试过使用key, value
,它也没有返回任何东西。我最初认为我可以有一个嵌套的for loop
,并循环遍历each
:
{% for each in results %}
{% for row in each %}
{{ row }}
{% endfor %}
{% endfor %}
但这又回来了'int' object is not iterable
我不确定我错过了什么,如果有人能指出我正确的方向!
解决方案
我还没有看到 Python 的这种语法。我没有使用过 django。所以,我只会使用你自己的格式,只修改一件事。而不是说for row in each
,你应该使用for row in results[each]
. results
是字典,each
是键。如果你想要那个字典的那个键的值,你需要通过results[each]
. 现在,如果它是可迭代的,您可以循环遍历该值。
{% for each in results %}
{% for row in results[each] %}
{{ row }}
{% endfor %}
{% endfor %}
推荐阅读
- c++ - 使用不同的 enable_if 条件选择方法
- azure-ad-b2c - MSAL 请求 HTTP 页面并引发“混合内容”错误
- python - 抓取新的请求 URL
- javascript - 通过按钮选择 ag-grid-table 中的下一行(如果下一行在下一页上)?
- c++ - 在 C++ 中,std::atomic 生成竞争条件。但是当使用 std::async 时,它会产生竞争条件
- javascript - html 中的 Srcset 混淆
- swift - 如何在 SwiftUI 中创建蓝视图?
- android - 尝试使用 android.support 为 android 添加 MSAL
- vue.js - 无法在其他组件中使用文件上传组件
- windows - 批处理脚本错误:获取一年中的哪一天