你是一个开发工程师,我现在需要你帮我开发一个可以在win10上运行的python程序,实现功能是,当前文件夹有两个文件夹A和B,把A文件夹的图片文件命复制到B文件夹中和A文件夹尺寸相同的图片上,注意是A文件夹中图片的文件命,后缀名不变,直到A文件夹中所有的图片文件命都复制到B文件夹中图片的文件命,程序结束,记住不要出现文件相同的情况,图片格式为png,注意是实现根据A文件夹中图片文件名复制到B文件夹中尺寸相同的图片上,只复制文件命就可以,B文件夹里面的数量图片保持不变,只复制文件命就可以啦,需要完整可运行的程序
时间: 2024-03-13 22:42:44 浏览: 14
好的,这个功能可以使用Python的Pillow库来实现。以下是完整可运行的程序代码:
```python
from PIL import Image
import os
import shutil
# 获取A和B文件夹路径
a_folder = os.path.join(os.getcwd(), 'A')
b_folder = os.path.join(os.getcwd(), 'B')
if not os.path.exists(b_folder):
os.makedirs(b_folder)
for img_name in os.listdir(a_folder):
# 只处理png格式的图片
if img_name.endswith('.png'):
a_img_path = os.path.join(a_folder, img_name)
a_img = Image.open(a_img_path)
a_size = a_img.size
# 遍历B文件夹中的图片,找到尺寸相同的图片并复制文件名
for b_img_name in os.listdir(b_folder):
if b_img_name.endswith('.png'):
b_img_path = os.path.join(b_folder, b_img_name)
b_img = Image.open(b_img_path)
b_size = b_img.size
if a_size == b_size:
b_img_new_name = os.path.splitext(img_name)[0] + os.path.splitext(b_img_name)[1]
b_img_new_path = os.path.join(b_folder, b_img_new_name)
shutil.copy(a_img_path, b_img_new_path)
break
```
这个程序首先获取A和B文件夹的路径,如果B文件夹不存在就创建一个。然后遍历A文件夹中的所有png格式的图片,获取每个图片的尺寸大小,再遍历B文件夹中的所有png格式的图片,找到尺寸相同的图片并复制A文件夹中图片的文件名,最后把A文件夹中的图片复制到B文件夹中,文件名为B文件夹中尺寸相同的图片文件名。注意,如果B文件夹中已经有同名文件,则会覆盖掉。