Skip to content

Commit 4c450c2

Browse files
authored
Merge pull request Show-Me-the-Code#245 from willhunger/master
add will's code
2 parents 624a843 + 7013317 commit 4c450c2

File tree

2 files changed

+236
-0
lines changed

2 files changed

+236
-0
lines changed

will/0000/add_num.py

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# 第 0000 题:将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种提示效果
2+
'''
3+
涉及模块/库:
4+
1.Pillow :http://pillow-cn.readthedocs.io/zh_CN/latest/
5+
2.random
6+
核心方法
7+
1.ImageFont Module:
8+
PIL.ImageFont.truetype(font=None, size=10, index=0, encoding='', filename=None)
9+
2.ImageDraw Module:
10+
PIL.ImageDraw.Draw.text(xy, text, fill=None, font=None, anchor=None)
11+
想法思路:
12+
1.Pillow库所读的图片以左上角为原点,类似于第四象限
13+
2.数字添加在图片的右上角,注意控制图片的位置,及xy参数
14+
'''
15+
16+
17+
import random
18+
from PIL import Image, ImageDraw, ImageFont
19+
new = 'new.jpg'
20+
21+
def add_num(pic, text):
22+
'add a message number on pics'
23+
try:
24+
im = Image.open(pic)
25+
except:
26+
print('failed')
27+
width, height = im.size
28+
fontsize = height / 4
29+
draw = ImageDraw.Draw(im)
30+
font = ImageFont.truetype('arial.ttf', int(fontsize))
31+
draw.text((0.7*width, 0.02*height), text, font=font, fill='red')
32+
im.save(new)
33+
34+
if __name__ == "__main__":
35+
number = str(random.randint(1, 99))
36+
pic = './old.jpg'
37+
add_num(pic, number)

will/README.md

Lines changed: 199 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,199 @@
1+
## Python 练习册,每天一个小程序 ##
2+
3+
4+
#### 说明: ####
5+
6+
- Python 练习册,每天一个小程序。注:将 Python 换成其他语言,大多数题目也适用
7+
- 不会出现诸如「打印九九乘法表」、「打印水仙花」之类的题目
8+
- [点此链接,会看到部分题目的代码,仅供参考](https://github.com/Show-Me-the-Code/python)
9+
- 本文本文由@史江歌(shijiangge@gmail.com QQ:499065469)根据互联网资料收集整理而成,感谢互联网,感谢各位的分享。鸣谢!本文会不断更新。
10+
11+
> Talk is cheap. Show me the code.--Linus Torvalds
12+
13+
----------
14+
15+
**第 0000 题:** 将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种提示效果。
16+
类似于图中效果
17+
18+
![头像](http://i.imgur.com/sg2dkuY.png?1)
19+
20+
**第 0001 题:** 做为 Apple Store App 独立开发者,你要搞限时促销,为你的应用**生成激活码**(或者优惠券),使用 Python 如何生成 200 个激活码(或者优惠券)?
21+
22+
**第 0002 题:** 将 0001 题生成的 200 个激活码(或者优惠券)保存到 **MySQL** 关系型数据库中。
23+
24+
**第 0003 题:** 将 0001 题生成的 200 个激活码(或者优惠券)保存到 **Redis** 非关系型数据库中。
25+
26+
**第 0004 题:** 任一个英文的纯文本文件,统计其中的单词出现的个数。
27+
28+
**第 0005 题:** 你有一个目录,装了很多照片,把它们的尺寸变成都不大于 iPhone5 分辨率的大小。
29+
30+
**第 0006 题:** 你有一个目录,放了你一个月的日记,都是 txt,为了避免分词的问题,假设内容都是英文,请统计出你认为每篇日记最重要的词。
31+
32+
**第 0007 题:** 有个目录,里面是你自己写过的程序,统计一下你写过多少行代码。包括空行和注释,但是要分别列出来。
33+
34+
**第 0008 题:** 一个HTML文件,找出里面的**正文**
35+
36+
**第 0009 题:** 一个HTML文件,找出里面的**链接**
37+
38+
**第 0010 题:** 使用 Python 生成类似于下图中的**字母验证码图片**
39+
40+
![字母验证码](http://i.imgur.com/aVhbegV.jpg)
41+
42+
- [阅读资料](http://stackoverflow.com/questions/2823316/generate-a-random-letter-in-python)
43+
44+
**第 0011 题:** 敏感词文本文件 filtered_words.txt,里面的内容为以下内容,当用户输入敏感词语时,则打印出 Freedom,否则打印出 Human Rights。
45+
46+
北京
47+
程序员
48+
公务员
49+
领导
50+
牛比
51+
牛逼
52+
你娘
53+
你妈
54+
love
55+
sex
56+
jiangge
57+
58+
**第 0012 题:** 敏感词文本文件 filtered_words.txt,里面的内容 和 0011题一样,当用户输入敏感词语,则用 星号 * 替换,例如当用户输入「北京是个好城市」,则变成「**是个好城市」。
59+
60+
**第 0013 题:** 用 Python 写一个爬图片的程序,爬 [这个链接里的日本妹子图片 :-)](http://tieba.baidu.com/p/2166231880)
61+
62+
- [参考代码](http://www.v2ex.com/t/61686 "参考代码")
63+
64+
**第 0014 题:** 纯文本文件 student.txt为学生信息, 里面的内容(包括花括号)如下所示:
65+
66+
{
67+
"1":["张三",150,120,100],
68+
"2":["李四",90,99,95],
69+
"3":["王五",60,66,68]
70+
}
71+
72+
请将上述内容写到 student.xls 文件中,如下图所示:
73+
74+
![student.xls](http://i.imgur.com/nPDlpme.jpg)
75+
76+
- [阅读资料](http://www.cnblogs.com/skynet/archive/2013/05/06/3063245.html) 腾讯游戏开发 XML 和 Excel 内容相互转换
77+
78+
**第 0015 题:** 纯文本文件 city.txt为城市信息, 里面的内容(包括花括号)如下所示:
79+
80+
{
81+
"1" : "上海",
82+
"2" : "北京",
83+
"3" : "成都"
84+
}
85+
86+
请将上述内容写到 city.xls 文件中,如下图所示:
87+
88+
![city.xls](http://i.imgur.com/rOHbUzg.png)
89+
90+
91+
**第 0016 题:** 纯文本文件 numbers.txt, 里面的内容(包括方括号)如下所示:
92+
93+
[
94+
[1, 82, 65535],
95+
[20, 90, 13],
96+
[26, 809, 1024]
97+
]
98+
99+
请将上述内容写到 numbers.xls 文件中,如下图所示:
100+
101+
![numbers.xls](http://i.imgur.com/iuz0Pbv.png)
102+
103+
**第 0017 题:** 将 第 0014 题中的 student.xls 文件中的内容写到 student.xml 文件中,如
104+
105+
下所示:
106+
107+
<?xml version="1.0" encoding="UTF-8"?>
108+
<root>
109+
<students>
110+
<!--
111+
学生信息表
112+
"id" : [名字, 数学, 语文, 英文]
113+
-->
114+
{
115+
"1" : ["张三", 150, 120, 100],
116+
"2" : ["李四", 90, 99, 95],
117+
"3" : ["王五", 60, 66, 68]
118+
}
119+
</students>
120+
</root>
121+
122+
123+
**第 0018 题:** 将 第 0015 题中的 city.xls 文件中的内容写到 city.xml 文件中,如下所示:
124+
125+
<?xmlversion="1.0" encoding="UTF-8"?>
126+
<root>
127+
<citys>
128+
<!--
129+
城市信息
130+
-->
131+
{
132+
"1" : "上海",
133+
"2" : "北京",
134+
"3" : "成都"
135+
}
136+
</citys>
137+
</root>
138+
139+
**第 0019 题:** 将 第 0016 题中的 numbers.xls 文件中的内容写到 numbers.xml 文件中,如下
140+
141+
所示:
142+
143+
<?xml version="1.0" encoding="UTF-8"?>
144+
<root>
145+
<numbers>
146+
<!--
147+
数字信息
148+
-->
149+
150+
[
151+
[1, 82, 65535],
152+
[20, 90, 13],
153+
[26, 809, 1024]
154+
]
155+
156+
</numbers>
157+
</root>
158+
159+
**第 0020 题:** [登陆中国联通网上营业厅](http://iservice.10010.com/index_.html) 后选择「自助服务」 --> 「详单查询」,然后选择你要查询的时间段,点击「查询」按钮,查询结果页面的最下方,点击「导出」,就会生成类似于 2014年10月01日~2014年10月31日通话详单.xls 文件。写代码,对每月通话时间做个统计。
160+
161+
**第 0021 题:** 通常,登陆某个网站或者 APP,需要使用用户名和密码。密码是如何加密后存储起来的呢?请使用 Python 对密码加密。
162+
163+
- 阅读资料 [用户密码的存储与 Python 示例](http://zhuoqiang.me/password-storage-and-python-example.html)
164+
165+
- 阅读资料 [Hashing Strings with Python](http://www.pythoncentral.io/hashing-strings-with-python/)
166+
167+
- 阅读资料 [Python's safest method to store and retrieve passwords from a database](http://stackoverflow.com/questions/2572099/pythons-safest-method-to-store-and-retrieve-passwords-from-a-database)
168+
169+
**第 0022 题:** iPhone 6、iPhone 6 Plus 早已上市开卖。请查看你写得 第 0005 题的代码是否可以复用。
170+
171+
**第 0023 题:** 使用 Python 的 Web 框架,做一个 Web 版本 留言簿 应用。
172+
173+
[阅读资料:Python 有哪些 Web 框架](http://v2ex.com/t/151643#reply53)
174+
175+
- ![留言簿参考](http://i.imgur.com/VIyCZ0i.jpg)
176+
177+
178+
**第 0024 题:** 使用 Python 的 Web 框架,做一个 Web 版本 TodoList 应用。
179+
180+
- ![SpringSide 版TodoList](http://i.imgur.com/NEf7zHp.jpg)
181+
182+
**第 0025 题:** 使用 Python 实现:对着电脑吼一声,自动打开浏览器中的默认网站。
183+
184+
185+
例如,对着笔记本电脑吼一声“百度”,浏览器自动打开百度首页。
186+
187+
关键字:Speech to Text
188+
189+
参考思路:
190+
1:获取电脑录音-->WAV文件
191+
python record wav
192+
193+
2:录音文件-->文本
194+
195+
STT: Speech to Text
196+
197+
STT API Google API
198+
199+
3:文本-->电脑命令

0 commit comments

Comments
 (0)