Skip to content

Commit ff4411c

Browse files
committed
commit 0005
1 parent bd2fecf commit ff4411c

2 files changed

Lines changed: 49 additions & 0 deletions

File tree

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# -*- coding: utf-8 -*-
2+
# 第 0005 题: 你有一个目录,装了很多照片,把它们的尺寸变成都不大于 iPhone5 分辨率的大小。
3+
import os
4+
5+
from PIL import Image
6+
7+
rootDir = 'imgs/'
8+
9+
10+
def judge_size(img):
11+
imgSize = img.size
12+
return max(imgSize) > 1136
13+
14+
15+
def return_size(img):
16+
max, min = img.size
17+
if max > min:
18+
return max, min
19+
else:
20+
return min, max
21+
22+
23+
def change_size(img, max, min):
24+
value = max / 1136
25+
min = int(min / value)
26+
newImg = img.resize((1136, min), Image.ANTIALIAS)
27+
return newImg
28+
29+
30+
for parent, dirnames, filenames in os.walk(rootDir):
31+
for filename in filenames:
32+
fName = filename
33+
print(filename)
34+
filename = parent + os.sep + filename
35+
fPostfix = os.path.splitext(filename)[1]
36+
try:
37+
img = Image.open(filename)
38+
except:
39+
print(filename)
40+
continue
41+
# img.load()
42+
print(filename)
43+
print(fPostfix)
44+
if (fPostfix == '.jpg' or fPostfix == '.png' or fPostfix == '.JPG' or fPostfix != '.PNG'):
45+
print(judge_size(img))
46+
if (judge_size(img) == True):
47+
max, min = return_size(img)
48+
newimg = change_size(img, max, min)
49+
newimg.save(rootDir + os.sep + fName)

darcycool/0005/imgs/photo.jpg

3.01 KB
Loading

0 commit comments

Comments
 (0)