我已经使用Python和Django建立了一个在线画廊。我刚刚开始添加编辑功能,从旋转开始。我使用sorl.thumbnail按需自动生成缩略图。
当我编辑原始文件时,我需要清理所有缩略图,以便生成新的缩略图。每个图片有三到四个(我在不同场合有不同的图片)。
我 可以 在文件变量中进行硬编码…但是这很混乱,如果我改变工作方式,则需要重新访问代码。
理想情况下,我想进行正则删除。用正则表达式来说,我所有的原件都这样命名:
^(?P<photo_id>\d+)\.jpg$
所以我想删除:
^(?P<photo_id>\d+)[^\d].*jpg$
(在我photo_id要清洁的ID替换的地方。)
photo_id
尝试这样的事情:
import os, re def purge(dir, pattern): for f in os.listdir(dir): if re.search(pattern, f): os.remove(os.path.join(dir, f))
然后,您将传递包含您要匹配的文件和模式的目录。