Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python中迭代字典列表?_Python_Django_Django Templates_Python 2.7 - Fatal编程技术网

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

如何在python中迭代字典列表?,python,django,django-templates,python-2.7,Python,Django,Django Templates,Python 2.7,我有一个python的字典列表,即 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模板中使用listofob

我有一个python的
字典列表
,即

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模板语法允许您循环dict列表:

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

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

请查看示例以了解渲染

在项目上循环(外部循环):

然后在dictionary对象中的项目上循环:

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