我有几种格式mylist1,mylist2,mylist3,mylist4,....
我试图在Python Bottle中迭代它们,但我找不到正确的方法
%for i in range(1,21):
{{mylist{{i}}[0]}} or {{mylist~i~[0]}} or {{mylist}}{{i}}[0] or {{mylist+i+[0]}} or {{mylist+i}}[0]
%end
但上述工作没什么。
答案 0 :(得分:1)
您可以从locals()
:
{{locals()['mylist' + str(i)][0]}}
演示:
>>> from bottle import template
>>> template('{{locals()["list" + str(i)]}}', i=1, list1=[1,2,3,4])
u'[1, 2, 3, 4]'
就个人而言,我不喜欢这个解决方案。最好使用context
,mylist1
... mylist2
作为键,将实际列表作为值构建mylistn
dict,并将其传递给模板:
>>> template('{{context["list" + str(i)]}}', i=1, context={'list1': [1,2,3,4]})
u'[1, 2, 3, 4]'
希望有所帮助。