繁体   English   中英

如何迭代python中的字典列表?

[英]How to iterate over list of dictionary in python?

我在python中有一个list of dictionary

listofobs = [{'timestamp': datetime.datetime(2012, 7, 6, 12, 39, 52), 'ip': u'1.4.128.0', 'user': u'lovestone'}, {'timestamp': datetime.datetime(2012, 7, 6, 12, 40, 32), 'ip': u'192.168.21.45', 'user': u'b'}]

我想在Django模板中使用listofobs变量的所有键和值。 例如:

对于第一次迭代:

timestamp = 7 july 2012, 12:39 Am
ip = 1.4.128.0
user = lovestone

并为第二次迭代:

 timestamp = 7 july 2012, 12:40 Am
 ip =  192.168.21.45
 user = b

等等 ..

for a in listofobs:
    print str( a['timestamp'] ), a['ip'], a['user']

将遍历dict列表,然后在模板中使用它们只需将其包装在所需的django语法中,这与常规python非常相似。

Django模板语法允许您循环遍历dicts列表:

{% for obj in listofobjs %}
    timestamp = {{ obj.timestamp }}
    ip = {{ obj.ip }}
    user = {{ obj.user }}
{% endfor %}

您需要做的就是确保listofobjs在您的上下文中进行渲染。

看的例子内置for模板标签

循环项目(你的外循环):

{% for obj in listofobjs %}
    {# do something with obj (just print it for now) #}
    {{ obj }}
{% endfor %}

然后循环遍历字典对象中的项:

{% for key, value in obj.items %}
    {{ key }}: {{ value }}
{% endfor %}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM