Python/Django-值在for循环之后返回

Python/Django-值在for循环之后返回,python,django,Python,Django,我正在尝试将照片列表的URL传递给模板。我将我的媒体URL连接到每个照片名称 当运行print(a)时,我可以在控制台中看到连接已成功添加。结果类似于media/photo.jpg。但是,当循环完成时,结果会恢复到原始的photo.jpg,就好像没有发生连接一样打印(照片)显示没有更改的照片列表 为什么? 您正在输出未更改的照片。此外,您还在a上循环,并一次又一次地更改值 试试这样吧 b = [] for a in photos: b.append(settings.MEDIA_

我正在尝试将照片列表的URL传递给模板。我将我的
媒体URL
连接到每个照片名称

当运行
print(a)
时,我可以在控制台中看到连接已成功添加。结果类似于
media/photo.jpg
。但是,当循环完成时,结果会恢复到原始的
photo.jpg
,就好像没有发生连接一样<代码>打印(照片)显示没有更改的照片列表

为什么?


您正在输出未更改的照片。此外,您还在a上循环,并一次又一次地更改值

试试这样吧

b = []
for a in photos:
        b.append(settings.MEDIA_URL + a)
        print(a)
print(b) # b is an array of url strings

在照片中的
中,
a
是照片中
元素的副本。因此,修改
a
不会修改iterable
照片中的值。可能您需要:
用于范围内的i(len(photos)):photos[i]+=settings.MEDIA\u URL
b = []
for a in photos:
        b.append(settings.MEDIA_URL + a)
        print(a)
print(b) # b is an array of url strings