Skip to content

Commit ddca3f6

Browse files
committed
add 0000-0024
1 parent 66ac0e4 commit ddca3f6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

87 files changed

+3635
-0
lines changed

hanxlleon/0000/0000.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# -*- coding: utf-8 -*-
2+
#第 0000 题:将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种提示效果
3+
4+
from PIL import Image, ImageDraw, ImageFont
5+
6+
def addNum(filePath):
7+
img = Image.open(filePath)
8+
size = img.size
9+
fontSize = size[1] / 4
10+
draw = ImageDraw.Draw(img)
11+
12+
ttFont = ImageFont.truetype("arial.ttf", fontSize)
13+
draw.text((size[0]-fontSize, 0), "8", (256,0,0), font=ttFont)
14+
del draw
15+
img.save('./result.jpg')
16+
img.show()
17+
18+
19+
if __name__ == '__main__':
20+
addNum("image.jpg")

hanxlleon/0000/image.jpg

45.9 KB
Loading

hanxlleon/0000/result.jpg

14.7 KB
Loading

hanxlleon/0001/0001.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# -*- coding: utf-8 -*-
2+
#第 0001 题:做为 Apple Store App 独立开发者,你要搞限时促销,为你的应用生成激活码(或者优惠券),使用 Python 如何生成 200 个激活码(或者优惠券)?
3+
4+
import random
5+
import os
6+
7+
def random_generater(count=12):
8+
code = []
9+
# base = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F]
10+
base = [str(x) for x in range(10)] + [chr(x) for x in range(ord('A'),ord('F'))]
11+
for i in range(0, count):
12+
code.append(random.choice(base))
13+
return ''.join(code)
14+
15+
if __name__ == '__main__':
16+
with open('result.txt', 'a') as f:
17+
for i in range(200):
18+
f.write(random_generater()+'\n')
19+
20+

hanxlleon/0001/result.txt

Lines changed: 200 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,200 @@
1+
7399DCB2382B
2+
0A8A5214A2E0
3+
01BC087A9DD5
4+
ECDA50DD0E49
5+
21D09DD14B98
6+
EB97B076C1D7
7+
9120C6178C06
8+
7A4E5A18AA0C
9+
BC2BEDBB2655
10+
7D8BE10DDA85
11+
A8BC50532D53
12+
CE3950B6EEE8
13+
14CA4E87EE69
14+
403648DB30C0
15+
4E38D7C94CA2
16+
981A51DDEE27
17+
9D57D8059297
18+
0AEA30763009
19+
3DAEAE085340
20+
33D27C8E95DE
21+
28981D8657E2
22+
0EAC51865896
23+
B28A117C53D8
24+
0A781CE2CA0A
25+
69BB3548838A
26+
565E61244AD7
27+
A248CC08860D
28+
191A8A5C78DA
29+
B856AB51A2B5
30+
1C7AC2DE659B
31+
4AAC5A6B3BBC
32+
7753E83C7317
33+
8C727B9A4976
34+
B8DEC1A20CC1
35+
985BA34B3CDE
36+
891527CE1A67
37+
6A0711D80BC2
38+
9D67469DA843
39+
3059B959D5AA
40+
561722395A5A
41+
C53123D111BA
42+
37A8722CE0E4
43+
CCB6191A91D2
44+
ECDB7885695E
45+
65BBD2D91345
46+
5E38772C90D2
47+
E5644A33E9A5
48+
109E4373CD42
49+
EA700443BEB2
50+
A555291DCB7E
51+
444170535CBC
52+
B569A17B2B87
53+
31AC01129E44
54+
80442D92D54B
55+
EBA279E0D083
56+
87D604DDBC7E
57+
58A7EA0D905E
58+
683D51D34630
59+
B85D19424C82
60+
5ACC4198E434
61+
44A941B0D7DC
62+
3C28D252B6A0
63+
A462D4E99724
64+
64E31AE1989B
65+
E3AA44A167D8
66+
D8DE20C3B6B1
67+
1251090C9103
68+
54E30DEEDE6D
69+
7125761BB98A
70+
063A0478D8CD
71+
C3914ACC6019
72+
40BBC81599E9
73+
A4E33E13B871
74+
20154976C343
75+
84C146D64290
76+
CC45222DC5DE
77+
2A52A519073E
78+
B514789AD1E8
79+
970EB4091E9D
80+
B5B75B91694E
81+
3B77E0250510
82+
ACB6E4ECD673
83+
37E15712B2DB
84+
D0BA25C058BD
85+
6BDC1A5D0676
86+
8BAAB02E27B6
87+
E7577211A0A4
88+
ADC160B9C792
89+
9E913713EA70
90+
AE5BC31C411A
91+
B46765315DC3
92+
04AE9A3E5605
93+
8E888BC84866
94+
9A65959C1657
95+
A717D83A14CE
96+
69E56497B006
97+
24E326AE30CE
98+
32AC291E710B
99+
27D7A2BB2C63
100+
2CCBC1771254
101+
BC7EED40A18A
102+
38C3723625B6
103+
94700B5BC750
104+
2287719CAA68
105+
2AD469A43BC9
106+
66E7A06E58C8
107+
50DD72382496
108+
27AC9659EB33
109+
A683B9112412
110+
60D0EC8BBB25
111+
AA454BDC1751
112+
BB07B6448965
113+
662385C60874
114+
DAA4A17A03DA
115+
67700D6E7564
116+
46ADE1866A51
117+
E78D4C90C690
118+
647D716611AE
119+
18CB91B6885D
120+
6D8685C1D03D
121+
3CC4AAEC0328
122+
E0CB52A4E6D0
123+
37B917695320
124+
2A0DA26BA900
125+
92004D245712
126+
8903AEDBDD44
127+
B8348BE9E798
128+
9DCDD0537657
129+
D6E389C5768B
130+
C4CC761C596A
131+
17831D717C0B
132+
70C7AD2D803A
133+
829DBCB1D3A7
134+
C6528ADD3351
135+
2E2A2948BB14
136+
59815AD51456
137+
E9A82824D87E
138+
939A6A5AD0A3
139+
99188183C358
140+
3C1201201265
141+
C60B2E90C3A8
142+
98E67920EA80
143+
1BCB9C998CC5
144+
9938906C6A35
145+
684AEAC5E5C2
146+
82DA8B7700BE
147+
5D62064D9483
148+
0724B3DE764C
149+
4D1BEDCD27AE
150+
0CA01C21308E
151+
AD74BD1544EA
152+
10AA90AD7D1C
153+
C628DEDD5288
154+
E6ABBDE8BAE1
155+
2EA35D0DC68A
156+
30841254DB83
157+
744DC682A6CE
158+
ADE4254645B8
159+
328EA72990D6
160+
784411B05C8B
161+
25D76529AD7B
162+
BC045408E903
163+
85C304878DA3
164+
721902B501BC
165+
292DC1E5B261
166+
803E4B493C45
167+
21B9C87CB0DC
168+
BE14A4DAE603
169+
E72819030E1A
170+
99727670A2C6
171+
886490DAC3A0
172+
D3C0CCAD5B33
173+
54A677CBEDED
174+
889493ECCAB5
175+
11983863D69B
176+
566C87DA99D2
177+
60612B26CB13
178+
03949A72451C
179+
7A84A77855D6
180+
73E407AE91CE
181+
441963CD9828
182+
635724E8E50D
183+
1737C5A5CEE8
184+
D97913813EBA
185+
46B228B2A700
186+
9914DE7E72EE
187+
23B0D32D5D6E
188+
2313276863B7
189+
2ABACE62B22B
190+
6301EB620D41
191+
5E69AEA5644E
192+
BEDBBE573715
193+
D174569EB055
194+
2EE2BE0199D9
195+
982676A509E6
196+
1E3076CEA985
197+
ACD945511A90
198+
96E7C7196918
199+
C8593AA03B1C
200+
07CD9D3E1E9A

hanxlleon/0002/0002.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# -*- coding: utf-8 -*-
2+
#将 0001 题生成的 200 个激活码(或者优惠券)保存到 MySQL 关系型数据库中。
3+
4+
import MySQLdb
5+
6+
def file_read(filename):
7+
with open(filename, 'r') as f:
8+
lines = f.readlines()
9+
for i in range(200):
10+
lines[i] = lines[i].strip()
11+
return lines
12+
13+
def mysql_write():
14+
lines = file_read('result.txt')
15+
conn = MySQLdb.connect(host='localhost',user='root', passwd='1', db='test', port=3306, charset='utf8')
16+
cursor = conn.cursor()
17+
cursor.execute('create table promo_code(id int(3) primary key, number varchar(12))')
18+
for i in range(200):
19+
cursor.execute('insert into promo_code (id, number) values(%s, %s)', [i+1, lines[i]])
20+
conn.commit()
21+
cursor.close()
22+
conn.close()
23+
print 'finish'
24+
25+
26+
if __name__ == '__main__':
27+
mysql_write()

0 commit comments

Comments
 (0)