我根据密钥在目录中有很多文件:
pic001.jpg
pic002.jpg
pic012.jpg
[...]
ico001.jpg
ico002.jpg
ico012.jpg
[...]
我希望列出这些文件并创建如下结构:
for r,d,f in os.walk(directory):
for file in f:
if file.startswith("pic"):
pic = file
ico = ???
images_list.append({
'big': directory + '/' + pic,
'thumb': directory + '/' + ico,
})
如何获得分配给他的“pic”文件和“ico”(仅当ico存在时)?
答案 0 :(得分:5)
最简单的答案似乎是:
ico = 'ico' + file[3:]
答案 1 :(得分:1)
您可以使用正则表达式来完成。
import re
icon = 'ico%s.jpg' % re.findall(r'^pic(\d+).jpg$', file)[0]
与使用切片相比,它肯定会更直观,更易于维护。
答案 2 :(得分:0)
为什么不使用regexp?
import re
...
m = re.search('\d+', f.name)
print 'ico' + str(m.group(0)) + 'jpg'