我在Python中创建了一个列表:
mylist=os.listdir("/User/Me/Folder")
现在我有一个列表中的文件列表。
我想做的是:
在另一个文件名后面加上一个文件名并添加一个URL:
/ myurl / + mylist中的每个项目
然后我想把结果写在Django的html模板中。
这样它就会在html列表中显示该文件夹中的所有图像
我怎样才能做到这一点?
由于
答案 0 :(得分:4)
使用列表推导,您可以将原始列表“mylist”转换为带有URL前缀的列表,如下所示:
urllist = ['/myurl/%s' % the_file for the_file in mylist]
分析:
a)方括号中的表达式是列表理解。它说:迭代“mylist”中的每个项目,暂时调用迭代项“the_file”并使用子表达式对其进行转换:'/ myurl /%s'%the_file
b)转换表达式说,创建一个字符串,其中%s被“the_file”值表示的字符串替换
答案 1 :(得分:3)
{% for filename in listoffilenames %}
/myurl/{{ filename }}
{% endfor %}
答案 2 :(得分:1)
相比之下,如果你想在视图中这样做(即使没有充分的理由这样做):
mylist[:] = [url + x for x in mylist]
如果您不需要修改现有列表,则可以删除[:]
。