我试图从给定目录返回随机但不同的图像
我已经编写了一个函数,它将从一个目录返回一个随机图像,但我需要它返回不同的图像,此时它返回图像,但其中一些图像是重复的
最好的方法是什么?任何帮助都将不胜感激
random_image.py
def random_image(image_dir):
valid_extensions = ['.jpg', '.jpeg', '.png', '.gif']
rand_dir = '/static/app_pickfeel/images/'
# print(rand_dir)
files = [f for f in os.listdir(settings.BASE_DIR + '/app_pickfeel/static/app_pickfeel/images')
if f[f.rfind("."):len(f)] in valid_extensions]
print(random.choice(files))
return rand_dir + random.choice(files)
我正在使用template.html中的函数多次调用它
<img class="img-thumbnail" src="{{ MEDIA_URL}}{% random_image 'app_pickfeel/images/' %}">
我认为您需要
random.sample()
,它从列表中返回n
随机唯一选项,而不是在循环中调用此函数然后,调用
将为您提供(最多)5个随机文件名的列表
您可以尝试set()从列表中删除重复项
希望这能帮助你
相关问题 更多 >
编程相关推荐