Python列表初学者

时间:2010-07-16 12:28:52

标签: python django list

我在Python中创建了一个列表:

mylist=os.listdir("/User/Me/Folder")

现在我有一个列表中的文件列表。

我想做的是:

在另一个文件名后面加上一个文件名并添加一个URL:

/ myurl / + mylist中的每个项目

然后我想把结果写在Django的html模板中。

这样它就会在html列表中显示该文件夹中的所有图像

我怎样才能做到这一点?

由于

3 个答案:

答案 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]

如果您不需要修改现有列表,则可以删除[:]