六图备份 大容量图片

1.1、切割(9*16)


# 参考网址:https://blog.csdn.net/weixin_42182534/article/details/125773141?ops_request_misc=&request_id=&biz_id=102&utm_term=python%E6%88%AA%E5%8F%96%E5%9B%BE%E7%89%87%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-125773141.nonecase&spm=1018.2226.3001.4187

'''

功能:商用图片切割2048*2048,2*2
作者:阿夏
时间:2023年7月27日 19:51
'''

import os
import os.path

from PIL import Image

long=1632
wide=2912

small_long=2
small_wide=2
# 目前图片都是2*2,3*3排列

# 1:1图比例是2048
# 16:9图片比例 2912:1632
# 3:4图片比例 1856:2464
wj=int(input('文件夹名称(1人物,2卡通,3宠物,4动漫,5风景,6其他)\n'))

lb=['人物','卡通','宠物','动漫','风景','其他']

print(lb[wj-1])
a=(lb[wj-1])

z=0
longall=[]
longall.append(z)
for l in range(1,small_long+1):
    ll=float(long/small_long*l)
    longall.append(ll)
print(longall)
# 右侧边的所有参数 长/X
# [0, 512, 1024, 1536, 2048]


wideall=[]
wideall.append(z)
for w in range(1,small_wide+1):
    ww=float(wide/small_wide*w)    
    wideall.append(ww)
print(wideall)
# 下边的所有参数 宽/X
# [0, 682.6666666666666, 1365.3333333333333, 2048.0]


pic=[]
for x in range(0,small_wide):
    for y in range(0,small_long):
        z1=longall[y]
        z2=wideall[x]
        z3=longall[y+1]
        z4=wideall[x+1]
        pic.append(z1)
        pic.append(z2)
        pic.append(z3)
        pic.append(z4)
print(len(pic))


# 定义文件所在文件夹
image_dir = r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}原图'.format(lb[wj-1])
for parent, dir_name, file_names in os.walk(image_dir):  # 遍历每一张图片
    for filename in file_names:
        print(filename)
        pic_name = os.path.join(parent, filename)
        image = Image.open(pic_name)
        _width, _height = image.size
        print(_width, _height)


        qfall=4
        # 每张图有4个坐标
        n=0  
        for p in range(int(len(pic)/4)):
            pp=pic[p*4:p*4+4]
            print(pp)

                    
            # 定义裁剪范围(left, upper, right, lower)1024
            # # box = image.crop((0,0,123,123))
            box = image.crop((pp[0],pp[1],pp[2],pp[3]))
            name = filename[:-4]+'_'+str(n) +'.png'
            
            print(name)
            # # # ,pp[3],pp[4],pp[5],pp[6],pp[7],pp[8],pp[9]))
            # # name = filename[:-4]+'_'+str(p) +'.png'2048
            
            box.save(r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}六图\{}'.format((lb[wj-1]),name))
            n+=1
            
#     print('Done!')   

# 新建几个文件夹

import os 
# type=int(input('输入名字.0人物 1卡通 2宠物 3动漫 4风景 5其他\n'))

# 建立文件夹
l=['01多余','02检查完成','03过度修改','04待定','05占位','06占位','07占位','08占位',]


for t in l:
    # 新建所有空白的文件夹
    dir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}六图\{}'.format(lb[wj-1],t)
    if not os.path.exists(dir):
        os.makedirs(dir)

1.2、切割(16*9)


# 参考网址:https://blog.csdn.net/weixin_42182534/article/details/125773141?ops_request_misc=&request_id=&biz_id=102&utm_term=python%E6%88%AA%E5%8F%96%E5%9B%BE%E7%89%87%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-125773141.nonecase&spm=1018.2226.3001.4187

'''

功能:商用图片切割2048*2048,2*2
作者:阿夏
时间:2023年7月27日 19:51
'''

import os
import os.path

from PIL import Image

long=2912
wide=1632

small_long=2
small_wide=2
# 目前图片都是2*2,3*3排列

# 1:1图比例是2048
# 16:9图片比例 2912:1632
# 3:4图片比例 1856:2464
wj=int(input('文件夹名称(1人物,2卡通,3宠物,4动漫,5风景,6其他)\n'))

lb=['人物','卡通','宠物','动漫','风景','其他']

print(lb[wj-1])
a=(lb[wj-1])

z=0
longall=[]
longall.append(z)
for l in range(1,small_long+1):
    ll=float(long/small_long*l)
    longall.append(ll)
print(longall)
# 右侧边的所有参数 长/X
# [0, 512, 1024, 1536, 2048]


wideall=[]
wideall.append(z)
for w in range(1,small_wide+1):
    ww=float(wide/small_wide*w)    
    wideall.append(ww)
print(wideall)
# 下边的所有参数 宽/X
# [0, 682.6666666666666, 1365.3333333333333, 2048.0]


pic=[]
for x in range(0,small_wide):
    for y in range(0,small_long):
        z1=longall[y]
        z2=wideall[x]
        z3=longall[y+1]
        z4=wideall[x+1]
        pic.append(z1)
        pic.append(z2)
        pic.append(z3)
        pic.append(z4)
print(len(pic))


# 定义文件所在文件夹
image_dir = r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}原图'.format(lb[wj-1])
for parent, dir_name, file_names in os.walk(image_dir):  # 遍历每一张图片
    for filename in file_names:
        print(filename)
        pic_name = os.path.join(parent, filename)
        image = Image.open(pic_name)
        _width, _height = image.size
        print(_width, _height)


        qfall=4
        # 每张图有4个坐标
        n=0  
        for p in range(int(len(pic)/4)):
            pp=pic[p*4:p*4+4]
            print(pp)

                    
            # 定义裁剪范围(left, upper, right, lower)1024
            # # box = image.crop((0,0,123,123))
            box = image.crop((pp[0],pp[1],pp[2],pp[3]))
            name = filename[:-4]+'_'+str(n) +'.png'
            
            print(name)
            # # # ,pp[3],pp[4],pp[5],pp[6],pp[7],pp[8],pp[9]))
            # # name = filename[:-4]+'_'+str(p) +'.png'2048
            
            box.save(r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}六图\{}'.format((lb[wj-1]),name))
            n+=1
            
#     print('Done!')   

# 新建几个文件夹

import os 
# type=int(input('输入名字.0人物 1卡通 2宠物 3动漫 4风景 5其他\n'))

# 建立文件夹
l=['01多余','02检查完成','03过度修改','04待定','05占位','06占位','07占位','08占位',]


for t in l:
    # 新建所有空白的文件夹
    dir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}六图\{}'.format(lb[wj-1],t)
    if not os.path.exists(dir):
        os.makedirs(dir)

1.3切割(1*1)


# 参考网址:https://blog.csdn.net/weixin_42182534/article/details/125773141?ops_request_misc=&request_id=&biz_id=102&utm_term=python%E6%88%AA%E5%8F%96%E5%9B%BE%E7%89%87%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-125773141.nonecase&spm=1018.2226.3001.4187

'''

功能:商用图片切割2048*2048,2*2
作者:阿夏
时间:2023年7月27日 19:51
'''

import os
import os.path

from PIL import Image

long=2048
wide=2048

small_long=2
small_wide=2
# 目前图片都是2*2,3*3排列

# 1:1图比例是2048
# 16:9图片比例 2912:1632
# 3:4图片比例 1856:2464
wj=int(input('文件夹名称(1人物,2卡通,3宠物,4动漫,5风景,6其他)\n'))

lb=['人物','卡通','宠物','动漫','风景','其他']

print(lb[wj-1])
a=(lb[wj-1])

z=0
longall=[]
longall.append(z)
for l in range(1,small_long+1):
    ll=float(long/small_long*l)
    longall.append(ll)
print(longall)
# 右侧边的所有参数 长/X
# [0, 512, 1024, 1536, 2048]


wideall=[]
wideall.append(z)
for w in range(1,small_wide+1):
    ww=float(wide/small_wide*w)    
    wideall.append(ww)
print(wideall)
# 下边的所有参数 宽/X
# [0, 682.6666666666666, 1365.3333333333333, 2048.0]


pic=[]
for x in range(0,small_wide):
    for y in range(0,small_long):
        z1=longall[y]
        z2=wideall[x]
        z3=longall[y+1]
        z4=wideall[x+1]
        pic.append(z1)
        pic.append(z2)
        pic.append(z3)
        pic.append(z4)
print(len(pic))


# 定义文件所在文件夹
image_dir = r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}原图'.format(lb[wj-1])
for parent, dir_name, file_names in os.walk(image_dir):  # 遍历每一张图片
    for filename in file_names:
        print(filename)
        pic_name = os.path.join(parent, filename)
        image = Image.open(pic_name)
        _width, _height = image.size
        print(_width, _height)


        qfall=4
        # 每张图有4个坐标
        n=0  
        for p in range(int(len(pic)/4)):
            pp=pic[p*4:p*4+4]
            print(pp)

                    
            # 定义裁剪范围(left, upper, right, lower)1024
            # # box = image.crop((0,0,123,123))
            box = image.crop((pp[0],pp[1],pp[2],pp[3]))
            name = filename[:-4]+'_'+str(n) +'.png'
            
            print(name)
            # # # ,pp[3],pp[4],pp[5],pp[6],pp[7],pp[8],pp[9]))
            # # name = filename[:-4]+'_'+str(p) +'.png'2048
            
            box.save(r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}六图\{}'.format((lb[wj-1]),name))
            n+=1
            
#     print('Done!')   

# 新建几个文件夹

import os 
# type=int(input('输入名字.0人物 1卡通 2宠物 3动漫 4风景 5其他\n'))

# 建立文件夹
l=['01多余','02检查完成','03过度修改','04待定','05占位','06占位','07占位','08占位',]


for t in l:
    # 新建所有空白的文件夹
    dir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}六图\{}'.format(lb[wj-1],t)
    if not os.path.exists(dir):
        os.makedirs(dir)

-----------------------------------------------------------------------------------------

2.1   四图转成 800_800KB测试最大自动筛选


# 参考网址:https://blog.csdn.net/weixin_42182534/article/details/125773141?ops_request_misc=&request_id=&biz_id=102&utm_term=python%E6%88%AA%E5%8F%96%E5%9B%BE%E7%89%87%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-125773141.nonecase&spm=1018.2226.3001.4187


wj=int(input('文件夹名称(1人物,2卡通,3宠物,4动漫,5风景,6其他)\n'))

lb=['人物','卡通','宠物','动漫','风景','其他']


import os
from PIL import Image
from PIL import ImageFile
import shutil

print('----第1步:新建临时文件夹,把png替换成jpg,做出十套图片-----')
z1=[]
for zz in range(10,101):
    z1.append(zz)
    dirname_read= r'C:/Users/jg2yXRZ/OneDrive/桌面/AI商业接单/{}六图/'.format(lb[wj-1]) # 注意后面的斜杠
    dirname_write=r'C:/Users/jg2yXRZ/OneDrive/桌面/AI商业接单/{}八百/'.format(lb[wj-1])

    names=os.listdir(dirname_read)
    count=0
    for name in names:
        img=Image.open(dirname_read+name)
        img.thumbnail((800, 800),Image.ANTIALIAS)  # 调整图片的尺寸长宽 高质量
        # img.resize((800, 800),Image.ANTIALIAS)  # 调整图片的尺寸长宽 高质量    
        name=name.split(".")
        if name[-1] == "png":
            name[-1] = "jpg"
            name = str.join(".", name)
            to_save_path = dirname_write + name
            img = img.convert('RGB')
            #RGBA意思是红色,绿色,蓝色,Alpha的色彩空间,Alpha指透明度。而JPG不支持透明度,所以要么丢弃Alpha,要么保存为.png文件
            img.save(to_save_path,"JPEG",quality=zz, optimize=True, progressive=True)
            # 96 31.6
            # 没有33.1
            count+=1
            print(name)
        else:
            continue   

    pathone=[]
    pr=r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}八百".format(lb[wj-1])

    # 风景变小:160张放在一起、
    # 风景八百:拆成6张放在一起
    # print(pr)

    # 过滤:只保留jpg结尾的图片
    imgs=os.listdir(pr)
    for img in imgs:
        if img.endswith(".jpg"):
            pathone.append(pr+'\\'+img)
    print(pathone)

    c=int(len(pathone))
    print(c)



    # # # 创建多少个文件夹
    # # # 文件名称001 002 两次都仙剑了5个文件夹
    # # # list1=[]   
    for t in range(1,int(len(pathone)/6)+1):
        # 第一次从1开始,
        name='{}_{}_{}'.format(format(lb[wj-1]),'%03d'%t,str(zz))
        # 风景_001
        print(name)
        
        # 文件序号确定        
        u='{}{}素材'.format('%02d'%wj,format(lb[wj-1]))
        
        c='临时文件夹'
        dir =pathone[t-1][0:35] +'\\'+c+'\\'+name+'\\'
        print(dir)          
    # 新建拼合文件夹
        if not os.path.exists(dir):
            os.makedirs(dir)
    
        tt=pathone[(t-1)*6:(t-1)*6+6]# 0-5 5-10
        print(tt)
        for ttt in tt:
            print(ttt)
            list_old=ttt
        # #     print(list_old)
            list_new=dir

        #     # # 复制文件(先不要删除)
            shutil.copy(list_old,list_new)

# test_masked=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\卡通八百'
print('----第2步:清空人物/卡通八百里面的数据并新建八百-----')
# 清空并新建八百

dirdir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}八百'.format(lb[wj-1])  
# # 删除所有有图片或没有图片的文件夹
if os.path.exists(dirdir):
    shutil.rmtree(dirdir)
    # shutil.remove(dir)
    # shutil.removedirs(dir)
else:
    pass
# # 新建人物八百的文件夹
if not os.path.exists(dirdir):
    os.makedirs(dirdir)



print('----第3步:读取文件夹大小,确定范围,并筛选最大文件夹的6张图片的路径,复制到人物/卡通八百-----')# # 


# 挑选最大KB的图片,并复制到八百里,删除临时文件夹


test_old=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\临时文件夹'
test_new=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}八百'.format(lb[wj-1])  



x=len(z1)
# print(x)


lj=[]
ims=os.listdir(test_old)
for im in ims:
    lj.append(test_old+'\\'+im)
# print(lj)
# # 只要文件夹
# print(len(lj))
# 文件夹数量95个

# # 十个数字内部进行比较
z2=[]
for a2 in range(int(len(lj)/x)):
    c=lj[a2*x:a2*x+x]
    z2.append(c)  
# print(z2) 
#  
# l_idx=[]
l_num=[]
l_path=[]
l_end=[]

for f in z2:
    l_num.clear() 
    l_path.clear() 
    for retall in f:       
        # print(retall)  # 路径+图片名称 

        name = os.path.basename(retall)
        sum = 0
        def func(dirpath):
            lst = os.listdir(dirpath)  # 大文件夹下文件列表,包括文件夹
            for el in lst:
                new_dir = dirpath+'\\'+el
                if os.path.isfile(new_dir):
                    getsize = os.path.getsize(new_dir)
                    global sum
                    sum += getsize
                else:
                    func(new_dir)
            return sum

        num = func(retall)
        KB=int(num/1024)
        print(KB)
        
        if 300<=KB<400:
            # 删选出300-400KB的图片,添加到列表
            l_num.append(KB)
            l_path.append(retall)
    print(l_num)
    print(l_path)  
     
    # KB列表里面的最大值
    # 注意:如果质量70-100生成的KB不在300-400之间,会出现空值,程序中断,所以最好把1-100都循环一次,但是这样时间很长,36份6张 做10-90 91套需要生成3276个文件夹。大约1个小时,1.65GB
    value=max(l_num)                # KB列表里面的最大值
    idx=l_num.index(value)                # 最大数字虽在的索引数字
    # print(value,idx)
    # 最大KB图片的路径     
    
    l_end.append(l_path[idx])

# # # 复制到新路径
tp=[]
for p4 in range(len(l_end)): 
    o=str(l_end[p4])
    # print(o)
    ims4=os.listdir(o)
    # print(ims4)
    for im4 in ims4:
        tp.append(o+'\\'+im4)
# print(tp)
# # 单张图片的路径
# print(len(tp)) 
# 12张
#    
for x in range(len(tp)): 
    list_old=tp[x]    # 临时文件夹里的路径和图片名称
    print(list_old)
    # C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\人物八百
    list_new=test_new+'\\'+list_old[52:0]

    print(list_new)

#     #     # # 复制文件(先不要删除)
    shutil.copy(list_old,list_new)
 
print('----第4步:删除临时文件夹-----')# #       
# 删除临时文件夹
if os.path.exists(test_old):
    shutil.rmtree(test_old)
    # shutil.remove(dir)
    # # shutil.removedirs(dir)

2.2  四图转成 800_800KB测试最大自动筛选


# 参考网址:https://blog.csdn.net/weixin_42182534/article/details/125773141?ops_request_misc=&request_id=&biz_id=102&utm_term=python%E6%88%AA%E5%8F%96%E5%9B%BE%E7%89%87%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-125773141.nonecase&spm=1018.2226.3001.4187

'''
图片6张都整理好以后

把风景六图改成风景八百
'''
wj=int(input('文件夹名称(1人物,2卡通,3宠物,4动漫,5风景,6其他)\n'))
# zz=int(input('800压缩质量83(最后检查一下是否最大,可以多做几份,把最大的那几分拿出来)\n'))

date=input('请输入日期"0708"\n')

bh=int(input('分组文件夹的数字,,1(卡通001套)\n'))

lb=['人物','卡通','宠物','动漫','风景','其他']


print('----第1步:新建临时文件夹,把png替换成jpg,做出十套图片-----')
import os
from PIL import Image
from PIL import ImageFile
import shutil

z1=[]
for zz in range(90,105):
    z1.append(zz)    # 确定组数,5个5个做对比
    # print(z1)
    dirname_read= r'C:/Users/jg2yXRZ/OneDrive/桌面/AI商业接单/{}六图/'.format(lb[wj-1]) # 注意后面的斜杠
    dirname_write=r'C:/Users/jg2yXRZ/OneDrive/桌面/AI商业接单/{}八百/'.format(lb[wj-1])

    names=os.listdir(dirname_read)
    count=0
    for name in names:
        img=Image.open(dirname_read+name)
        img.thumbnail((1280, 720),Image.ANTIALIAS)  # 调整图片的尺寸长宽 高质量
        # img.resize((800, 800),Image.ANTIALIAS)  # 调整图片的尺寸长宽 高质量    
        name=name.split(".")
        if name[-1] == "png":
            name[-1] = "jpg"
            name = str.join(".", name)
            to_save_path = dirname_write + name
            img = img.convert('RGB')
            #RGBA意思是红色,绿色,蓝色,Alpha的色彩空间,Alpha指透明度。而JPG不支持透明度,所以要么丢弃Alpha,要么保存为.png文件
            img.save(to_save_path,"JPEG",quality=zz, optimize=True, progressive=True)
            # 96 31.6
            # 没有33.1
            count+=1
            # print(name)
        else:
            continue
    
    ll=['变小','八百']

    import shutil

    pathone=[]
    pr=r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}八百".format(lb[wj-1])

    # 风景变小:160张放在一起、
    # 风景八百:拆成6张放在一起
    # print(pr)

    # 过滤:只保留jpg结尾的图片
    imgs=os.listdir(pr)
    for img in imgs:
        if img.endswith(".jpg"):
            pathone.append(pr+'\\'+img)
    # print(pathone)

    c=int(len(pathone))
    # print(c)

    for t in range(1,int(len(pathone)/1)+1):
       
        c='临时文件夹'

        dir =pathone[t-1][0:35] +'\\'+c+ '\\'
    
        # 新建拼合文件夹
        if not os.path.exists(dir):
            os.makedirs(dir)

        # 只传1张图片,没有文件夹
        tt=pathone[t-1]# 0-5 5-10
       
        list_old=tt
        #     
        list_new=dir+pathone[t-1][41:-4]+'_{}'.format(str(zz))+'.jpg'
        print(list_new)

        #     # # 复制文件(先不要删除)
        shutil.copy(list_old,list_new)

# test_masked=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\卡通八百'
print('----第2步:清空八百里面的数据并新建八百-----')
# 清空并新建八百

dirdir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}八百'.format(lb[wj-1])  
# # 删除所有有图片或没有图片的文件夹
if os.path.exists(dirdir):
    shutil.rmtree(dirdir)
    # shutil.remove(dir)
    # shutil.removedirs(dir)
else:
    pass
# # 新建所有空白的文件夹
if not os.path.exists(dirdir):
    os.makedirs(dirdir)

print('----第3步:读取图片大小,确定范围,并筛选最大的的图片的路径,复制到卡通八百-----')# # 

# 挑选最大KB的图片,并复制到八百里,删除临时文件夹

test_new=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}八百'.format(lb[wj-1])  
test_old=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\临时文件夹'

lj=[]
ims=os.listdir(test_old)
for im in ims:
    if im.endswith(".jpg"):
        lj.append(test_old+'\\'+im)
# print(lj)
# print(len(lj))
# 十个数字内部进行比较

x=len(z1)
z2=[]
for a2 in range(int(len(lj)/x)):
    c=lj[a2*x:a2*x+x]
    z2.append(c)  
# print(z2) 
#  
# l_idx=[]
l_num=[]
l_path=[]
l_end=[]

for f in z2:
    l_num.clear() 
    l_path.clear() 
    for d in f:     
         
        # print(d)  # 路径+图片名称  
        imageSize = os.path.getsize(d)
        imageSize /= 1024 # 除以1024是代表Kb
        e=int(round(imageSize))
        # print(e)
        
        if 300<=e<400:
            # 删选出300-400KB的图片,添加到列表
            l_num.append(e)
            l_path.append(d)
    print(l_num)
    print(l_path)  
     
       # KB列表里面的最大值
    value=max(l_num)                # KB列表里面的最大值
    idx=l_num.index(value)                # 最大数字虽在的索引数字
    # print(value,idx)
    # 最大KB图片的路径     
    
    l_end.append(l_path[idx])

# print(l_num)
# print(l_path)

# 最大两张图片的路径
print(l_end)
print(len(l_end))
for a in l_end:
    print(a)
# ['C:\\Users\\jg2yXRZ\\OneDrive\\桌面\\AI商业接单\\临时文件夹\\001_1_97.jpg', 'C:\\Users\\jg2yXRZ\\OneDrive\\桌面\\AI商业接单\\临时文件夹\\001_2_96.jpg']

# 复制到新路径
 
for p in range(len(l_end)):
    list_old=l_end[p]    # 临时文件夹里的路径和图片名称
    print(list_old)
    list_new=test_new+'\\'+list_old[42:-7]+'.jpg'
    
    print(list_new)

    #     # # 复制文件(先不要删除)
    shutil.copy(list_old,list_new)
 
print('----第4步:删除临时文件夹-----')# #       
# 删除临时文件夹
if os.path.exists(test_old):
    shutil.rmtree(test_old)
    # shutil.remove(dir)
    # # shutil.removedirs(dir)




print('----第5步:把卡通八百内容复制到指定的卡通里面的001里面-----')# #   

pathtwo=[]
pr2=r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}八百".format(lb[wj-1])  


# 过滤:只保留jpg结尾的图片
imgs2=os.listdir(pr2)
for img2 in imgs2:
    if img2.endswith(".jpg"):
        pathtwo.append(pr2+'\\'+img2)
# print(pathtwo)
c2=int(len(pathtwo))
print(c2)

# 新建文件夹
bigname='2023{}_{}素材{}号({}份)'.format(date,lb[wj-1],'%03d'%bh,int(c2))

# 新建一个黄色文件夹
dir3 =r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}{}素材\{}".format('%02d'%wj,lb[wj-1],bigname)
if not os.path.exists(dir3):
    os.makedirs(dir3)

# 图片从旧路径替换到新路径
for t2 in range(len(pathtwo)):
    

    list_old2 =pathtwo[t2]
    print(list_old2)
    
    list_new2=dir3+"\\"+pathtwo[t2][41:]
    print(list_new2)
    #     # # 复制文件(先不要删除)
    shutil.copy(list_old2,list_new2)


 2.301-00-03 四图转成 720_1280KB 测试最大合并汇总


# 参考网址:https://blog.csdn.net/weixin_42182534/article/details/125773141?ops_request_misc=&request_id=&biz_id=102&utm_term=python%E6%88%AA%E5%8F%96%E5%9B%BE%E7%89%87%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-125773141.nonecase&spm=1018.2226.3001.4187

'''
图片6张都整理好以后

把风景六图改成风景八百
'''
wj=int(input('文件夹名称(1人物,2卡通,3宠物,4动漫,5风景,6其他)\n'))
# zz=int(input('800压缩质量83(最后检查一下是否最大,可以多做几份,把最大的那几分拿出来)\n'))

date=input('请输入日期"0708"\n')

bh=int(input('分组文件夹的数字,,1(卡通001套)\n'))

lb=['人物','卡通','宠物','动漫','风景','其他']


print('----第1步:新建临时文件夹,把png替换成jpg,做出十套图片-----')
import os
from PIL import Image
from PIL import ImageFile
import shutil

z1=[]
for zz in range(90,105):
    z1.append(zz)    # 确定组数,5个5个做对比
    # print(z1)
    dirname_read= r'C:/Users/jg2yXRZ/OneDrive/桌面/AI商业接单/{}六图/'.format(lb[wj-1]) # 注意后面的斜杠
    dirname_write=r'C:/Users/jg2yXRZ/OneDrive/桌面/AI商业接单/{}八百/'.format(lb[wj-1])

    names=os.listdir(dirname_read)
    count=0
    for name in names:
        img=Image.open(dirname_read+name)
        img.thumbnail((720, 1280),Image.ANTIALIAS)  # 调整图片的尺寸长宽 高质量
        # img.resize((800, 800),Image.ANTIALIAS)  # 调整图片的尺寸长宽 高质量    
        name=name.split(".")
        if name[-1] == "png":
            name[-1] = "jpg"
            name = str.join(".", name)
            to_save_path = dirname_write + name
            img = img.convert('RGB')
            #RGBA意思是红色,绿色,蓝色,Alpha的色彩空间,Alpha指透明度。而JPG不支持透明度,所以要么丢弃Alpha,要么保存为.png文件
            img.save(to_save_path,"JPEG",quality=zz, optimize=True, progressive=True)
            # 96 31.6
            # 没有33.1
            count+=1
            # print(name)
        else:
            continue
    
    ll=['变小','八百']

    import shutil

    pathone=[]
    pr=r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}八百".format(lb[wj-1])

    # 风景变小:160张放在一起、
    # 风景八百:拆成6张放在一起
    # print(pr)

    # 过滤:只保留jpg结尾的图片
    imgs=os.listdir(pr)
    for img in imgs:
        if img.endswith(".jpg"):
            pathone.append(pr+'\\'+img)
    # print(pathone)

    c=int(len(pathone))
    # print(c)

    for t in range(1,int(len(pathone)/1)+1):
       
        c='临时文件夹'

        dir =pathone[t-1][0:35] +'\\'+c+ '\\'
    
        # 新建拼合文件夹
        if not os.path.exists(dir):
            os.makedirs(dir)

        # 只传1张图片,没有文件夹
        tt=pathone[t-1]# 0-5 5-10
       
        list_old=tt
        #     
        list_new=dir+pathone[t-1][41:-4]+'_{}'.format(str(zz))+'.jpg'
        print(list_new)

        #     # # 复制文件(先不要删除)
        shutil.copy(list_old,list_new)

# test_masked=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\卡通八百'
print('----第2步:清空八百里面的数据并新建八百-----')
# 清空并新建八百

dirdir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}八百'.format(lb[wj-1])  
# # 删除所有有图片或没有图片的文件夹
if os.path.exists(dirdir):
    shutil.rmtree(dirdir)
    # shutil.remove(dir)
    # shutil.removedirs(dir)
else:
    pass
# # 新建所有空白的文件夹
if not os.path.exists(dirdir):
    os.makedirs(dirdir)

print('----第3步:读取图片大小,确定范围,并筛选最大的的图片的路径,复制到卡通八百-----')# # 

# 挑选最大KB的图片,并复制到八百里,删除临时文件夹

test_new=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}八百'.format(lb[wj-1])  
test_old=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\临时文件夹'

lj=[]
ims=os.listdir(test_old)
for im in ims:
    if im.endswith(".jpg"):
        lj.append(test_old+'\\'+im)
# print(lj)
# print(len(lj))
# 十个数字内部进行比较

x=len(z1)
z2=[]
for a2 in range(int(len(lj)/x)):
    c=lj[a2*x:a2*x+x]
    z2.append(c)  
# print(z2) 
#  
# l_idx=[]
l_num=[]
l_path=[]
l_end=[]

for f in z2:
    l_num.clear() 
    l_path.clear() 
    for d in f:     
         
        # print(d)  # 路径+图片名称  
        imageSize = os.path.getsize(d)
        imageSize /= 1024 # 除以1024是代表Kb
        e=int(round(imageSize))
        # print(e)
        
        if 300<=e<400:
            # 删选出300-400KB的图片,添加到列表
            l_num.append(e)
            l_path.append(d)
    print(l_num)
    print(l_path)  
     
       # KB列表里面的最大值
    value=max(l_num)                # KB列表里面的最大值
    idx=l_num.index(value)                # 最大数字虽在的索引数字
    # print(value,idx)
    # 最大KB图片的路径     
    
    l_end.append(l_path[idx])

# print(l_num)
# print(l_path)

# 最大两张图片的路径
print(l_end)
print(len(l_end))
for a in l_end:
    print(a)
# ['C:\\Users\\jg2yXRZ\\OneDrive\\桌面\\AI商业接单\\临时文件夹\\001_1_97.jpg', 'C:\\Users\\jg2yXRZ\\OneDrive\\桌面\\AI商业接单\\临时文件夹\\001_2_96.jpg']

# 复制到新路径
 
for p in range(len(l_end)):
    list_old=l_end[p]    # 临时文件夹里的路径和图片名称
    print(list_old)
    list_new=test_new+'\\'+list_old[42:-7]+'.jpg'
    
    print(list_new)

    #     # # 复制文件(先不要删除)
    shutil.copy(list_old,list_new)
 
print('----第4步:删除临时文件夹-----')# #       
# 删除临时文件夹
if os.path.exists(test_old):
    shutil.rmtree(test_old)
    # shutil.remove(dir)
    # # shutil.removedirs(dir)




# print('----第5步:把卡通八百内容复制到指定的卡通里面的001里面-----')# #   

# pathtwo=[]
# pr2=r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}八百".format(lb[wj-1])  


# # 过滤:只保留jpg结尾的图片
# imgs2=os.listdir(pr2)
# for img2 in imgs2:
#     if img2.endswith(".jpg"):
#         pathtwo.append(pr2+'\\'+img2)
# # print(pathtwo)
# c2=int(len(pathtwo))
# print(c2)

# # 新建文件夹
# bigname='2023{}_{}素材{}号({}份)'.format(date,lb[wj-1],'%03d'%bh,int(c2))

# # 新建一个黄色文件夹
# dir3 =r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}{}素材\{}".format('%02d'%wj,lb[wj-1],bigname)
# if not os.path.exists(dir3):
#     os.makedirs(dir3)

# # 图片从旧路径替换到新路径
# for t2 in range(len(pathtwo)):
    

#     list_old2 =pathtwo[t2]
#     print(list_old2)
    
#     list_new2=dir3+"\\"+pathtwo[t2][41:]
#     print(list_new2)
#     #     # # 复制文件(先不要删除)
#     shutil.copy(list_old2,list_new2)


 3.1  3乘2图变小图片最大化

# # -*- coding: utf-8 -*-
# import fitz


'''
AI商业接单2.0(一页2份 动物朝向有的左侧、有的右侧)
目的:
1、AI商业接单涂色
2、AI商业接单排序
3、AI商业接单分类(向左向右)
作者:阿夏
时间:2023年4月15日)

'''


# 参考网址:https://blog.csdn.net/weixin_42182534/article/details/125773141?ops_request_misc=&request_id=&biz_id=102&utm_term=python%E6%88%AA%E5%8F%96%E5%9B%BE%E7%89%87%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-125773141.nonecase&spm=1018.2226.3001.4187

'''
图片6张都整理好以后

把风景六图改成风景八百,用来最后转移到6图文件夹
'''

print('----0,输入参数- ---')

wj=int(input('文件夹名称(1人物,2卡通,3宠物,4动漫,5风景,6其他)\n'))

lb=['人物','卡通','宠物','动漫','风景','其他']

print('----------第2步:提取六张图片的路径------------')


import os
from PIL import Image

lb=['人物','卡通','宠物','动漫','风景','其他']
print(lb[wj-1])
a=(lb[wj-1])

z1=[]
for zz in range(90,102):
    z1.append(zz)
    path=[]
    pr=r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}六图".format(a)
    # 过滤:只保留png结尾的图片
    imgs=os.listdir(pr)
    for img in imgs:
        if img.endswith(".png"):
            path.append(pr+'\\'+img)

    figure=[]
    for p in range(int(len(path)/6)):
        pp=path[p*6:p*6+6]
        
        figure.append(pp)
    print(figure)
    print(len(figure))
        

    print('----------第3步:新建一个临时文件夹------------')
    # 新建一个”装N份word和PDF“的文件夹
    os.mkdir(r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\零时Word')


    print('----------第4步:写入图片 ------------')

    import os
    import random
    import time

    import docx
    import pandas as pd
    from docx import Document
    from docx2pdf import convert
    from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
    from docx.oxml.ns import qn
    from docx.shared import Cm, Inches, Pt, RGBColor
    from docxtpl import DocxTemplate

    for nn in range(0,int(len(path)/6)):    
        doc = Document(r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\6格单图模板_1024_720(顶格).docx')
                    #    6格图模板 - 副本.docx')
    #       
        # figures=[]
        # for f in range(len(path))):   # 02
    # 单元格位置/3*4格
        bg=[]
        for x in range(0,3,2):        # 4行
            for y in range(1,6,2):    # 3列
                    ww='{}{}'.format(x,y)
                    bg.append(ww)
        print(bg)   
        # ['00', '02', '04', '20', '22', '24']

        table = doc.tables[0]          # 4567(8)行

        for t in range(len(bg)):   # 02
            pp=int(bg[t][0])    
            qq=int(bg[t][1])  
            # print(p)               
            k=figure[nn][t] 
        
            print(pp,qq,k)
            

            # 写入图片
            run=doc.tables[0].cell(pp,qq).paragraphs[0].add_run()        # 在第1个表格中第2个单元格内插入国旗
            run.add_picture('{}'.format(k),width=Cm(13.3),height=Cm(13.3))
            table.cell(pp,qq).paragraphs[0].alignment = WD_PARAGRAPH_ALIGNMENT.CENTER#居中  
            
            # # 写入序号和生肖名称
            # run=table.cell(pp,qq).paragraphs[0].add_run(k2)    # 在单元格0,0(第1行第1列)输入第0个图图案
            # run.font.name = '黑体'#输入时默认华文彩云字体
            # # run.font.size = Pt(46)  #输入字体大小默认30号 换行(一页一份大卡片
            # run.font.size = Pt(29)  #输入字体大小默认30号 一行里(可以一页两份)
            # run.font.bold= True  #是否加粗
            # run.font.color.rgb = RGBColor(200,200,200) #数字小,颜色深0-255
            # # paragraph.paragraph_format.line_spacing = Pt(180) #数字段间距
            
            # r = run._element
            # r.rPr.rFonts.set(qn('w:eastAsia'), '黑体')#将输入语句中的中文部分字体变为华文行楷
            # table.cell(pp,qq).paragraphs[0].alignment = WD_PARAGRAPH_ALIGNMENT.CENTER #居中     

                    
        doc.save(r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\零时Word\{}.docx'.format('%02d'%nn))   
        from docx2pdf import convert

        # docx 文件另存为PDF文件
        inputFile = r"C:/Users/jg2yXRZ/OneDrive/桌面/AI商业接单/零时Word/{}.docx".format('%02d'%nn)  # 要转换的文件:已存在
        outputFile = r"C:/Users/jg2yXRZ/OneDrive/桌面/AI商业接单/零时Word/{}.pdf".format('%02d'%nn)  # 要生成的文件:不存在
        # 先创建 不存在的 文件
        f1 = open(outputFile, 'w')
        f1.close()
        # 再转换往PDF中写入内容
        convert(inputFile, outputFile)
        
    print('----------第5步:把都有PDF合并为一个打印用PDF------------')
        
    # 多个PDF合并(CSDN博主「红色小小螃蟹」,https://blog.csdn.net/yangcunbiao/article/details/125248205)
    import os

    from PyPDF2 import PdfFileMerger

    target_path =  'C:/Users/jg2yXRZ/OneDrive/桌面/AI商业接单/零时Word'
    pdf_lst = [f for f in os.listdir(target_path) if f.endswith('.pdf')]
    pdf_lst = [os.path.join(target_path, filename) for filename in pdf_lst]
    pdf_lst.sort()
    file_merger = PdfFileMerger()
    for pdf in pdf_lst:
        print(pdf)
        file_merger.append(pdf)
    file_merger.write("C:/Users/jg2yXRZ/OneDrive/桌面/AI商业接单/{}素材PDF.pdf".format(a))
    file_merger.close()
    # doc.Close()

    # print('----------第5步:删除临时文件夹------------')    
    import shutil

    shutil.rmtree('C:/Users/jg2yXRZ/OneDrive/桌面/AI商业接单/零时Word') #递归删除文件夹,即:删除非空文件夹



    print('--------------6.pdf转成图片,1028*720,350-400zKB之间------------')
    
    import datetime
    import os

    import fitz  # fitz就是pip install PyMuPDF


    def pyMuPDF_fitz(pdfPath, imagePath):
        startTime_pdf2img = datetime.datetime.now()  # 开始时间

        print("imagePath=" + imagePath)
        pdfDoc = fitz.open(pdfPath)
        for pg in range(pdfDoc.pageCount):
            page = pdfDoc[pg]
            rotate = int(0)
            # 每个尺寸的缩放系数为1.3,这将为我们生成分辨率提高2.6的图像。
            # 此处若是不做设置,默认图片大小为:792X612, dpi=96
            # zoom_x = 1.33333333  # (1.33333333-->1056x816)   (2-->1584x1224)
            # zoom_y = 1.33333333

            zoom_x = 2  # (1.33333333-->1056x816)   (2-->1584x1224)
            zoom_y = 2       
            mat = fitz.Matrix(zoom_x, zoom_y).preRotate(rotate)
            pix = page.getPixmap(matrix=mat, alpha=False)

            if not os.path.exists(imagePath):  # 判断存放图片的文件夹是否存在
                os.makedirs(imagePath)  # 若图片文件夹不存在就创建

            pix.writePNG(imagePath + '/' + '{}{}.png'.format(a,'%03d'% (pg+1))) # 将图片写入指定的文件夹内

        endTime_pdf2img = datetime.datetime.now()  # 结束时间
        print('pdf2img时间=', (endTime_pdf2img - startTime_pdf2img).seconds)


    if __name__ == "__main__":
        # 1、PDF地址
        pdfPath = r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}素材PDF.pdf'.format(a)
        # 2、需要储存图片的目录
        imagePath = r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}拼合'.format(a)
        pyMuPDF_fitz(pdfPath, imagePath)
        

    print('----7.把1028(720png替换成jpg-----')
    import os
    from PIL import Image

    dirname_read= r'C:/Users/jg2yXRZ/OneDrive/桌面/AI商业接单/{}拼合/'.format(a) # 注意后面的斜杠
    dirname_write=r'C:/Users/jg2yXRZ/OneDrive/桌面/AI商业接单/临时文件夹/'

    if not os.path.exists(dirname_write):
            os.makedirs(dirname_write)

    names=os.listdir(dirname_read)
    count=0
    for name in names:
        img=Image.open(dirname_read+name)
        img=img.resize((1280, 720))     # 调整图片的尺寸可以任意调整大小,原图16:9,可能改成1:1
        # img.thumbnail((1280, 720))  # 调整图片的尺寸等比例缩小,原图16:9,缩放后就是16:9,不能改成1:1
        name=name.split(".")
        if name[-1] == "png":
            name[-1] = "jpg"
            name = str.join(".", name)
            to_save_path = dirname_write + name[:-4]+'_{}'.format(zz)+'.jpg'
            img = img.convert('RGB')
            #RGBA意思是红色,绿色,蓝色,Alpha的色彩空间,Alpha指透明度。而JPG不支持透明度,所以要么丢弃Alpha,要么保存为.png文件
            img.save(to_save_path,"JPEG", quality=zz, optimize=True, progressive=True)
            # q=100,570KB  q=98 400KB q=97 352KB q=96 300-400之间  352KB q=95 280KB 
            count+=1
            print(name)
        else:
            continue
    print('运行完成!共转换了 %d 张图片' % (count))


print('----第3步:读取文件夹大小,确定范围,并筛选最大文件夹的6张图片的路径,复制到人物/卡通八百-----')# # 


# 挑选最大KB的图片,并复制到八百里,删除临时文件夹


test_old=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\临时文件夹'
test_new=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}变小'.format(lb[wj-1])  



x=len(z1)
# print(x)


lj=[]
ims=os.listdir(test_old)
for im in ims:
    lj.append(test_old+'\\'+im)
print(lj)
# # 只要文件夹
print(len(lj))
# 文件夹数量95个

# # 十个数字内部进行比较
z2=[]
for a2 in range(int(len(lj)/x)):
    c=lj[a2*x:a2*x+x]
    z2.append(c)  
# print(z2) 
#  
l_idx=[]
l_num=[]
l_path=[]
l_end=[]

for f in z2:
    l_num.clear() 
    l_path.clear() 
    for retall in f:       
        print(retall)  # 路径+图片名称 

#       # print(d)  # 路径+图片名称  
        imageSize = os.path.getsize(retall)
        imageSize /= 1024 # 除以1024是代表Kb
        e=int(round(imageSize))
        # print(e)
        
        if 300<=e<400:
            # 删选出300-400KB的图片,添加到列表
            l_num.append(e)
            l_path.append(retall)
    print(l_num)
    print(l_path)  
     
    # KB列表里面的最大值
    # 注意:如果质量70-100生成的KB不在300-400之间,会出现空值,程序中断,所以最好把1-100都循环一次,但是这样时间很长,36份6张 做10-90 91套需要生成3276个文件夹。大约1个小时,1.65GB
    value=max(l_num)                # KB列表里面的最大值
    idx=l_num.index(value)                # 最大数字虽在的索引数字
    # print(value,idx)
    # 最大KB图片的路径     
    
    l_end.append(l_path[idx])
print(l_end)

# # # 复制到新路径

# tp=[]
# for p4 in range(len(l_end)): 
#     o=str(l_end[p4])
#     # print(o)
#     ims4=os.listdir(o)
#     # print(ims4)
#     for im4 in ims4:
#         tp.append(o+'\\'+im4)
# # print(tp)
# # # 单张图片的路径
# # print(len(tp)) 
# # 12张
# #    
for x in range(len(l_end)): 
    list_old=l_end[x]    # 临时文件夹里的路径和图片名称
    print(list_old)
    # C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\人物八百
    list_new=test_new+'\\'+list_old[45:]
    print(list_new)

# # #     #     # # 复制文件(先不要删除)
    shutil.copy(list_old,list_new)
 
print('----第4步:删除临时文件夹-----')# #       
# 删除临时文件夹
# if os.path.exists(test_old):
#     shutil.rmtree(test_old)
    # shutil.remove(dir)
    # # shutil.removedirs(dir)








4.1   KB最大的单图和六图转移(这是6图和单图样式)


import os
import shutil
import glob

print('----------第8步:把“风景变小”里面的图片全部转移到X、把“风景八百”里面的图片转移到6张一组------------')


ll=['变小','八百']

date=input('请输入日期"0708"\n')

bh=int(input('分组文件夹的数字,,1(卡通001套)\n'))
wj=int(input('文件夹名称(1人物,2卡通,3宠物,4动漫,5风景,6其他)\n'))
lb=['人物','卡通','宠物','动漫','风景','其他']
print(lb[wj-1])
a=(lb[wj-1])

import shutil

pathone=[]
pr=r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}八百".format(a)

# 风景变小:160张放在一起、
# 风景八百:拆成6张放在一起
# print(pr)

# 过滤:只保留jpg结尾的图片
imgs=os.listdir(pr)
for img in imgs:
    if img.endswith(".jpg"):
        pathone.append(pr+'\\'+img)
# print(pathone)
c=int(len(pathone))
print(c)

# 新建文件夹
bigname='2023{}_{}素材{}号({}份)'.format(date,a,'%03d'%bh,int(c/6))

# 创建多少个文件夹
# 文件名称001 002 两次都仙剑了5个文件夹
# list1=[]   
for t in range(1,int(len(pathone)/6)+1):
    # 第一次从1开始,
    name='{}_{}_{}'.format(date,a,'%03d'%t)
    # 风景_001
    print(name)
    
    # 文件序号确定        
    u='{}{}素材'.format('%02d'%wj,a)
    

    dir =pathone[t-1][0:35] +'\\'+u+'\\'+bigname+'\\'+'{}_六图({}文件夹)'.format(str(date),str(int(c/6)))+'\\'+name+'\\'
    # print(dir)          
    # C:\Users\jg2yXRZ\OneDrive\桌面\实验\风景_001\变小
    # C:\Users\jg2yXRZ\OneDrive\桌面\实验\风景_001\

    # 新建拼合文件夹
    if not os.path.exists(dir):
        os.makedirs(dir)
   
    tt=pathone[(t-1)*6:(t-1)*6+6]# 0-5 5-10
    print(tt)
    for ttt in tt:
        print(ttt)
        list_old=ttt
    # #     print(list_old)
        list_new=dir

    #     # # 复制文件(先不要删除)
        shutil.copy(list_old,list_new)



# 6图合并的单图,内容复制到03风景素材里面的单图
list_old="C:/Users/jg2yXRZ/OneDrive/桌面/AI商业接单/{}变小".format(a)
print(list_old)
# #     print(list_old)
list_new="C:/Users/jg2yXRZ/OneDrive/桌面/AI商业接单/{}{}素材/{}/{}_单图({}张样图)".format('%02d'%wj,lb[wj-1],bigname,date,int(c/6))
print(list_new)

 # # 复制文件(先不要删除)
shutil.copytree(list_old,list_new)

5.1清空文件夹

import shutil
import os

# 新建文件夹

list=['人物','卡通','宠物','动漫','风景','其他']
fl=['拼合','六图','原图','变小','八百']
q=int(input('1删除,2新建,3删除并新建 \n'))



lb=[]
for l in range(len(list)):
    # print(l)
    for f in range(len(fl)):
        # print(f)
        zh='{}{}'.format(list[l],fl[f])
        lb.append(zh)
print(lb)

if q ==1:
    for m in range(len(lb)) :
        dir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}'.format(lb[m])  
        # # 删除所有有图片或没有图片的文件夹
        if os.path.exists(dir):
            shutil.rmtree(dir)
            # shutil.remove(dir)
            # shutil.removedirs(dir)
        else:
            pass        

if q ==2:
    for m in range(len(lb)) :
        dir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}'.format(lb[m])  
             

        # # 新建所有空白的文件夹
        if not os.path.exists(dir):
            os.makedirs(dir)


if q ==3:
    for m in range(len(lb)) :
        dir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商业接单\{}'.format(lb[m])  
        # # 删除所有有图片或没有图片的文件夹
        if os.path.exists(dir):
            shutil.rmtree(dir)
            # shutil.remove(dir)
            # shutil.removedirs(dir)
        else:
            pass
        

        # # 新建所有空白的文件夹
        if not os.path.exists(dir):
            os.makedirs(dir)

你可能感兴趣的:(python,sklearn,开发语言)