python将一个文件夹内所有的图片文件复制至另一个目录

本文介绍了一种使用Python批量复制特定格式图片的方法,并提供了详细示例代码,适用于从复杂目录结构中按需复制图片文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

当前目录下文件
将所有图片复制至come目录,程序如下:

import os
import shutil
import cv2
path_xml = "/home/nuaa301/桌面/cut"   #当前操作目录 
filelist = os.listdir(path_xml)
for index,files in enumerate(filelist):
    filename1 = os.path.splitext(files)[1]  # 读取文件后缀名
    filename0 = os.path.splitext(files)[0]  #读取文件名
    if filename1 == ".jpg" :    
        shutil.copy(files,"come"+"/"+str(index)+".jpg")
       # 需要将files改为绝对路径

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

come目录下:
在这里插入图片描述参考博文:

https://blog.youkuaiyun.com/congcong7267/article/details/83412747

参考博文的参考程序:

import os
import shutil

path_xml = “D://5”#windows系统用双斜线
filelist = os.listdir(path_xml)
path1 = “D:\5”
path2 = “D:\5\jpg\”

for files in filelist:
filename1 = os.path.splitext(files)[1] # 读取文件后缀名
filename0 = os.path.splitext(files)[0] #读取文件名
print(filename1)
m = filename1 == ‘.jpg’
print(m)
if m :
full_path = os.path.join(path1, files)
despath = path2 + filename0+’.jpg’ #.jpg为你的文件类型,即后缀名,读者自行修改
shutil.move(full_path, despath)

<span class="token keyword">else</span> <span class="token punctuation">:</span>
    <span class="token keyword">continue</span>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

类似代码

# 将NVIE的后80%的数据集复制到新的目录下
# 技术有限,先将所有复制过来
import os
import shutil
'''
path = os.getcwd()  # 当前工作目录
file_list = os.listdir(path)
for filename in file_list:
    print(filename)  # 打印当前目录下所有文件
'''

# 待操作的目录:/media/ys/YangShuang1/expression_database/NVIE/SpontaneousDatabase_01/front
# src_main_path = ‘/media/ys/YangShuang1/expression_database/NVIE/SpontaneousDatabase_01’ # 数据库 part01
src_main_path = ‘/media/ys/YangShuang1/expression_database/NVIE/SpontaneousDatabase_02’ # 数据库 part02
if(os.path.exists(os.path.join(src_main_path,‘front’))): # 存在front目录
catalog_list = os.listdir(os.path.join(src_main_path,‘front’)) # 目录列表 无序
for index,person in enumerate(catalog_list):
if os.path.exists(os.path.join(src_main_path,‘front’,person,‘visible’)): # 某人的目录下存在visible目录
if os.path.exists(os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence1’)):
filelist = os.listdir(os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence1’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence1’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/front_light/train_dataset/1/")
if os.path.exists(os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence2’)):
filelist = os.listdir(os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence2’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence2’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/front_light/train_dataset/2/")
if os.path.exists(os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence3’)):
filelist = os.listdir(os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence3’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence3’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/front_light/train_dataset/3/")
if os.path.exists(os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence4’)):
filelist = os.listdir(os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence4’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence4’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/front_light/train_dataset/4/")
if os.path.exists(os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence5’)):
filelist = os.listdir(os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence5’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence5’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/front_light/train_dataset/5/")
if os.path.exists(os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence6’)):
filelist = os.listdir(os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence6’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘front’,person,‘visible’,‘sequence6’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/front_light/train_dataset/6/")

if(os.path.exists(os.path.join(src_main_path,‘left’))): # 存在left目录
catalog_list = os.listdir(os.path.join(src_main_path,‘left’)) # 目录列表 无序
for index,person in enumerate(catalog_list):
if os.path.exists(os.path.join(src_main_path,‘left’,person,‘visible’)): # 某人的目录下存在visible目录
if os.path.exists(os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence1’)):
filelist = os.listdir(os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence1’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence1’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/left_light/train_dataset/1/")
if os.path.exists(os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence2’)):
filelist = os.listdir(os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence2’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence2’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/left_light/train_dataset/2/")
if os.path.exists(os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence3’)):
filelist = os.listdir(os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence3’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence3’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/left_light/train_dataset/3/")
if os.path.exists(os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence4’)):
filelist = os.listdir(os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence4’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence4’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/left_light/train_dataset/4/")
if os.path.exists(os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence5’)):
filelist = os.listdir(os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence5’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence5’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/left_light/train_dataset/5/")
if os.path.exists(os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence6’)):
filelist = os.listdir(os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence6’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘left’,person,‘visible’,‘sequence6’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/left_light/train_dataset/6/")

if(os.path.exists(os.path.join(src_main_path,‘right’))): # 存在right目录
catalog_list = os.listdir(os.path.join(src_main_path,‘right’)) # 目录列表 无序
for index,person in enumerate(catalog_list):
if os.path.exists(os.path.join(src_main_path,‘right’,person,‘visible’)): # 某人的目录下存在visible目录
if os.path.exists(os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence1’)):
filelist = os.listdir(os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence1’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence1’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/right_light/train_dataset/1/")
if os.path.exists(os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence2’)):
filelist = os.listdir(os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence2’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence2’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/right_light/train_dataset/2/")
if os.path.exists(os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence3’)):
filelist = os.listdir(os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence3’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence3’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/right_light/train_dataset/3/")
if os.path.exists(os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence4’)):
filelist = os.listdir(os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence4’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence4’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/right_light/train_dataset/4/")
if os.path.exists(os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence5’)):
filelist = os.listdir(os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence5’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence5’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/right_light/train_dataset/5/")
if os.path.exists(os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence6’)):
filelist = os.listdir(os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence6’))
# 遍历该目录下所有图片
for index,files in enumerate(filelist):
files_path = os.path.join(src_main_path,‘right’,person,‘visible’,‘sequence6’,files)
shutil.copy(files_path,"/media/ys/YangShuang1/expression_database/NVIE_use/right_light/train_dataset/6/")

print(“Done!”)

# src_path = src_main_path+‘008/visible/sequence1’ # 源目录
# catalog_list = os.listdir(src_path) # 列表 无序
# print(“type(catalog_list):”,type(catalog_list))
# print(catalog_list)
# print(os.path.exists(src_main_path+‘008/visible/sequence2’)) # 判断文件/目录是否存在

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值