如何在python中减少文件名?

2024-09-30 08:18:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个不断增加的网络摄像机图像目录。我想用一个python脚本来获得最近的10张图片。目前我有以下代码来获取最新的图像。我想减少文件名,得到最近的10张图片,并将它们命名为image\u current1.jpg到image\u current10.jpg。你知道吗

import os
import glob

from PIL import Image
from shutil import copyfile

# variables 
rawFileDir = 'C:\pictures\image00*.jpg'
mriFileName = 'C:\pictures\image_current1.jpg'

# obtain and copy most recent image
mostRecentImage = max(glob.iglob(rawFileDir), key=os.path.getctime)
copyfile(mostRecentImage,mriFileName)

Tags: from图像imageimport网络os图片glob
2条回答

您可以使用glob.iglob(rawFileDir)中的排序列表:

import os
import glob

from PIL import Image
from shutil import copyfile

# variables 
rawFileDir = 'E:\Test\image00*.jpg'
mriFileName = 'E:\Test\image_current'

# obtain and copy most recent image
mostRecentImage = sorted(glob.iglob(rawFileDir), key=os.path.getctime)
for num, i in enumerate(mostRecentImage[:~10:-1]):
    exec('copyfile(i, mriFileName + str({}) + ".jpg")'.format(num + 1))

image_current1.jpg将是最新的文件。你知道吗

这将提供所需文件名(例如image\u current01.jpg)和目标文件的字典。你知道吗

{'image_current' + str(n).zfill(1): filename 
 for n, filename in enumerate(sorted((os.path.getctime(f), f) 
 for f in glob.glob('*.jpg'))[-10::][::-1])}

相关问题 更多 >

    热门问题