从字典中获取键值 Django/Python

4 投票
2 回答
7223 浏览
提问于 2025-04-16 13:10

如何直接打印一个键的值

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 的值。

2 个回答

1

如果我猜得没错,你现在做的事情不应该用字典。你传给模板的参数已经在一个字典里了。如果你不打算遍历这些参数,直接把键放到模板参数里会更好。

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

这样在你的模板中引用它们就简单多了。

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

如果你确实需要遍历一个任意的字典,那么AndiDog的回答是对的。

14

不要把字典命名为 dict,这样会把内置的 dict 类型名称覆盖掉,导致后面不能再使用这个内置的功能。

在模板中,你可以这样访问字典里的键和值:

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

如果你只需要键,可以用 d.keys 来获取。

撰写回答