【发布时间】:2012-07-24 19:36:09
【问题描述】:
我构建了一个这样的数据结构:
{ level: [ event1, event2... ] }
level 是以下之一:C(代表临界)、H(代表高)、M(代表中)、L(代表低)。
我想根据级别打印django模板中的所有事件,首先是C(关键),然后是H(高),M(中),L(低)。但是,默认情况下,这就是我所拥有的:
{% for level, events in dictionary.items %}
{% for event in events %}
do something with level, event
{% endfor %}
{% endfor %}
我先打印出 H(high),然后打印出 C(critical),等等。我想问:如何按特定顺序循环字典?还是应该将其转换为其他数据结构?谢谢。
编辑: 我认为史蒂夫的方法效果很好。它将字典转换为列表,字典的每个条目变成一个元组:
[ (level1: [event1, event2 ...]), (level2: [event3, event4 ...]) ]
【问题讨论】:
-
请注意,订购和字典通常不能很好地结合在一起。
标签: python django sorting dictionary