Python 周记/Week 0 如何开始写

大家好
作为一个很懒的肥宅,有多懒呢?

每次找到好图都想右键!
嗯,听说爬虫很厉害
好的!
我要做个爬虫扒图!
...
5 个月后,也就是今天,我还只会安装 python...
感觉不行动的话又会过去 5 个月 /微笑
所以!
从今天开始做一个长期挑战 : Python 学习周记
即是将学习笔记整理发布!并尽可能不断更,先定一个小目标,独立写出自动筛选扒图存盘的虫虫

按照惯例都是从安装配置环境开始一步步讲,可是我已经无数次从头学习 Hello world...这次想换一下


路线

后续增加...

方法

根据实际问题展开学习,解构知识路径

声明

  • 想到哪写到哪
  • 使用 Python3.6
  • 我比较菜鸡(都不会),日记各种不完美
  • 没有啦

那么,开始吧!
第 0000 题:将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种提示效果。 类似于图中效果

方法是调用一个图形处理库 PIL (不支持 Python3 ,所以改用 Pillow )进行处理

  • 我用的版本是 3.6 , Win 上命令安装无效,所以找到Pillow 下载页选择合适版本下载安装即可

pypi

  • 执行

思路

from PIL import Image, ImageDraw, ImageFont, ImageColor
def add_num(img):
    draw = ImageDraw.Draw(img)
    myfont = ImageFont.truetype('C:/windows/fonts/calibri.ttf',size=40)
    fillcolor = ImageColor.colormap.get('red')
    width,height = img.size
    draw.text((width-30,0),'2',font=myfont,fill=fillcolor)
    img.save('result.jpg','jpeg')
    return 0
if __name__ == '__main__':
    image = Image.open('test.jpg')
    add_num(image)

result

  • 遇到的问题

不能调用字体文件名带中文的字体

  • 另外

关于return 0 return 语句用来从函数中 return(返回),也就是说跳出函数
延展阅读: Python return 语句

关于if __name__ == '__main__': 让你写的脚本模块既可以导入到别的模块中用,另外该模块自己也可执行
延展阅读:浅析 python 中__name__ = 'main' 的作用

关于 Pillow
详细Pillow 官方文档


ok !本周完结!本来的基础只能写 if 、 while 的小循环。看调用 from import 貌似也能明白点,但是强行看代码遇到的麻烦也不是一点半点,整体花费时间也不少,好在还是动手了。 周末研究下怎么做出来真实的通知小气泡,比如这样

QQ

拜拜~


Python 周记/Week 0 如何开始写

16 回复

感谢分享, win 下安装库真蛋疼


我无法理解你的问题。

用 pip 啊,很多编译麻烦的库都提前编译好了,完全没压力好么。。。。。。

3.6 不知道为什么用不了 pip ,所以我才改用 exe

怎么是从这个开始?

应该从爬虫开始么哈哈

是啊,我也开始要写了,看了一两天语法了

那你加油,我想绕一圈再去写,我现在的水平稍微复杂的代码都得搜一下才明白

是不是提示找不到 pip 可执行程序?试试python3 -m pip install 包名

好的,明早醒来试试

嘻嘻(◍•ᴗ•◍)

试过了,还是不行

报的什么错?


<br>Traceback (most recent call last):<br> File "C:\Program Files\Python36\lib\site-packages\PIL\<a target="_blank" href="http://ImageFont.py" rel="nofollow noopener">ImageFont.py</a>", line 238, in truetype<br> return FreeTypeFont(font, size, index, encoding)<br> File "C:\Program Files\Python36\lib\site-packages\PIL\<a target="_blank" href="http://ImageFont.py" rel="nofollow noopener">ImageFont.py</a>", line 127, in __init__<br> self.font = core.getfont(font, size, index, encoding)<br>OSError: cannot open resource<br><br>During handling of the above exception, another exception occurred:<br><br>Traceback (most recent call last):<br> File "C:\Users\电扇君\Desktop\Python 周记\Week0\<a target="_blank" href="http://img.py" rel="nofollow noopener">img.py</a>", line 12, in &lt;module&gt;<br> add_num(image)<br> File "C:\Users\电扇君\Desktop\Python 周记\Week0\<a target="_blank" href="http://img.py" rel="nofollow noopener">img.py</a>", line 4, in add_num<br> myfont = ImageFont.truetype('C:/windows/fonts/明兰 light',size=40)<br> File "C:\Program Files\Python36\lib\site-packages\PIL\<a target="_blank" href="http://ImageFont.py" rel="nofollow noopener">ImageFont.py</a>", line 273, in truetype<br> return FreeTypeFont(fontpath, size, index, encoding)<br> File "C:\Program Files\Python36\lib\site-packages\PIL\<a target="_blank" href="http://ImageFont.py" rel="nofollow noopener">ImageFont.py</a>", line 127, in __init__<br> self.font = core.getfont(font, size, index, encoding)<br>OSError: cannot open resource<br>

加油吧,慢慢来~

回到顶部