选择循环中目录中的xfiles数

2024-09-29 20:14:58 发布

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

我有一个目录,其中包括多人拍摄的多张图片。每人有8张照片。我想知道如何在一个循环中选择一个人的所有照片。所以每次选择8张图片。我得出了以下结论:

import glob
import os, os.path

path = 'C:/Users/HJA/Desktop/Teeth/Photos'
files = glob.glob('C:/Users/HJA/Desktop/Teeth/Photos/*.jpeg')
files.sort(key=os.path.getmtime)

for x in range(8):
   DoSomething

有人能帮我创建每个人的批吗


Tags: pathimport目录os图片filesusers照片
1条回答
网友
1楼 · 发布于 2024-09-29 20:14:58

如果所有文件都已排序,则前8个文件属于一个人,后8个文件属于第二个人,依此类推。因此,为每个人创建一个名为时间戳的新目录,或者您可以将其更改为1、2、3等计数器

import os, datetime
import shutil
files.sort(key=os.path.getmtime)
for x in range(0,len(files),8):
    mydir = os.path.join(os.getcwd(), datetime.datetime.now().strftime('%Y-%m-%d_%H-%M-%S'))#os.getcwd() -> target dir
    os.makedirs(mydir)
    for file_ptr in range(x,x+8):
        shutil.copy(files[file_ptr],os.path.join(os.getcwd(),mydir)

无法测试它,但从逻辑上讲,它应该工作

相关问题 更多 >

    热门问题