从Django/Python字典中获取键值

4
如何从键本身打印键的值
dict={}
dict.update({'aa':1})
dict.update({'ab':1})
dict.update({'ac':1})
return render_to_response(t.html,  context_instance=RequestContext(request, {'dict':dict}))

在这种情况下,我想要打印键 alert('{{dict.aa}}');,即,在不使用任何循环的情况下,我们是否可以仅通过引用上面示例中的aa来打印键,可能是这样的某些内容,例如,如果 {{dict['aa']}} 应该给出aa的值。


4
dict作为一个字典的名字并不好,因为它与内置函数冲突。另外,要向字典添加元素,只需使用d[key] = value。第三,要从字典中检索值,请使用d[key] - Björn Pollex
2个回答

14

不要将字典的名称命名为dict,否则会覆盖当前作用域中的内置dict类型名称。

您可以像这样在模板中访问键和值:

{% for item in d.items %}
    key = {{ item.0 }}
    value = {{ item.1 }}
{% endfor %}

如果只需要获取字典中的键,可以使用d.keys


1

如果你正在做我认为你在做的事情,你不应该使用字典。传递给模板的参数已经在一个字典中了。如果你不打算循环遍历它们,最好直接将键放入模板参数中。

 return render_to_response(t.html,  
     context_instance=RequestContext(request, {'aa':1, 'ab': 1, 'ac':1}))

现在在模板中引用它们非常容易。

{{ aa }}
{{ ab }}
{{ ac }}

如果您确实需要循环遍历任意字典,则AndiDog的答案是正确的。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接