Python 中 如何复制图片?如何更改图片存储路径?
上午写的图像分析程序,想将不同类型的图片分别存储在不同文件夹下
于是就需要将图片进行复制和删除
先说删除,这个简单:
os.remove(picPath)
然后在复制部分,被坑惨了
有的博客使用shutil的copyfile方法,第一个参数为picPath(也就是带.JPG),第二个参数为目标文件夹时会遇到
PermissionError: [Errno 13] Permission denied
发现是权限问题,但是无论是取消只读还是设置管理员权限都无法解决
于是,转而使用PIL库的Image类,具体代码如下:
""" ABANDON_PATH是目标文件夹 注意是文件夹,不是文件! class_name 是次级文件夹名称 des 是图片最终名称,比如" 03.jpg " """ Img = Image.open(picPath) if os.path.exists(os.path.join(ABANDON_PATH, class_name)): Img.save(os.path.join(ABANDON_PATH, class_name,des)) else: os.makedirs(os.path.join(ABANDON_PATH, class_name)) Img.save(os.path.join(ABANDON_PATH, class_name,des)) os.remove(picPath)
成功解决问题!看来果然文件处理还是需要用PIL靠谱点。