以下是使用render_to_response发送到html的dict
{'header_list':['关于我们','免责声明','定位','立即订购','登录','注册'],'sidebar_list':['关于我们','免责声明', '定位','立即订购','登录','注册'],'href_list':['/ admin /','#','#','#','#','#']}
fp = os.path.join(fp, 'static/appdata/menubar.txt')
with open(fp, 'r') as mb:
for i, line in enumerate(mb):
menu_list.append(line)
hl = ast.literal_eval(menu_list[i])
head_list.update(hl)
print(head_list, type(head_list))
hl = head_list['href_list']
print(hl)
return render_to_response('header.html', head_list)
header.html中的我的HTML代码
<div id="nav">
<ul>
{% for i1 in header_list %}
<li><a href={{ href_list.1 }}><span>{{ i1 }}</span></a></li>
{% endfor %}
</ul>
</div>
我想通过字典列表
动态地使用href标签页面标题如下所示 enter image description here
答案 0 :(得分:0)
在python中,您可以使用以下语法访问dict的键值和列表元素:
my_dict = {'key1':1,'key2':2}
my_dict['key1']
my_list = [1,2,3,4,'hello']
my_list[4]
在您的示例中,您尝试使用href_list.1
尝试访问第一个元素,我认为href_list[1]
编辑:
>>> a
[12, 34, 4]
>>> b
[3, 4, 5]
>>> [(a[i],b[i]) for i in range(len(a))]
[(12, 3), (34, 4), (4, 5)]
>>>
现在你可以做到了,
for i,j in [(a[i],b[i]) for i in range(len(a))]:
print('link:{},name:{}'.format(i,j))
如果您的模板循环
,您也可以这样做答案 1 :(得分:0)
改变这样的字典 {'header_list':[('关于我们','/ admin /'),('免责声明','#'),('定位','#'),('立即订购','#'), ('登录','#'),('注册','#')]}
和HTML代码如下
{% for i1, i2 in header_list %}
<li><a href={{ i2 }}><span>{{ i1 }}</span></a></li>
{% endfor %}