有一批512512大小的图片,想改成256256大小。
所用到的方法如下:
① os.walk()
这个方法会返回一个3元元组:文件夹所在目录、文件夹下的所有文件夹、文件夹下的所有文件)(若文件夹下无文件夹则是2元元祖)
②os.path.splitext()
这个方法会拆分文件名和后缀名,返回一个2元元组:文件名、后缀名
代码如下:
#!/usr/bin/env python
import os
from PIL import Image
path = 'c:/users/administrator/desktop/pic/'
savepath = 'c:/users/administrator/desktop/picture/'
def change_pic_size():
for pic in os.walk(path):
pic_list = (pic[2])
for pic in pic_list:
postfix = os.path.splitext(pic)[1]
if postfix == '.jpeg' or postfix == '.jpg' or postfix == '.png':
im = Image.open(path + pic)
new_im = im.resize((256,256))
new_im.save(savepath + 'changed_'+ pic)
if __name__ == '__main__':
change_pic_size()
path为图片所在文件夹,pathsave为修改后的文件所在文件夹。