编者按:朋友圈转发过的Python学习教程是否已经被你遗忘在收藏夹里?原作者William Koehrsen是一名应用数据科学研究员、超级马拉松亚军,本文是他学习Python的入门心得,或许能够帮助迟迟未行动的你。
回忆我的第一个Python程序
出于怀旧的缘故,我想分享我两年前的第一个Python程序。我最初学习Python,只是作为一名航空航天工程专业的学生想要逃避学习Spreadsheets(电子表格制作软件),而我也不知道怎么就选择了Python。
我的Python教育始于Al Sweigart 的“ Automated the Boring Stuff with Python”一书 ,它是一本出色的程序入门书籍,教你用简单的程序来完成有用的任务。当我学习一个新的课程时,我会寻找使用它的机会,试图用Python解决一个新问题。
在第一个作业之前,我非常渴望得到这本价值200美元的书,但我连租金20美元都付不起。我看到亚马逊有一个免费的一星期试用机会,便通过亚马逊,拿到了这本书一个星期的使用权、完成了作业。虽然我可以每次需要都创建一个新账户,但太麻烦了。我想出了一个更有效的方法,利用Python进行了一次编程。
Automate the Boring Stuff中的许多有用的库之一是pyautogui,它允许你通过Python控制键盘和鼠标。有人说,当你有一把锤子,每一个问题看起来就会像一个钉子。
Python和pyautogui将允许我按箭头键,并截图,解决了“书本无限免费看问题”。
我写了第一个程序,自动翻阅书中的每一页并截图。虽然只有10行,但我却非常自豪!
以下是本次代码的全部内容:
导入pyautogui
导入时间
#睡5秒钟,让我打开书的时间
sleep.leep(5)
#范围可以根据页数(1000)进行更改:
for i in range(1000):
#翻页
pyautogui.keyDown('right')
pyautogui.keyUp('right')
#保存截图
pyautogui.screenshot('images / page_%d.pdf'%i)
time.sleep (0.05)
运行程序非常简单(我鼓励任何人尝试)。我将脚本保存为book_screenshot.py,然后在同一个文件夹中拉出一个命令提示符并键入:
python book_screenshot.py
然后,我会有5秒钟翻转书,并把它放到全屏。该程序将完成剩下的工作,浏览每个页面并截取保存为pdf的截图。然后,我可以把所有的pdf文件合并成一个文件,并且有一个(虽然合法性可疑)这本书的副本!诚然,这是一个不够尊重版权的副本,但却是我为了看书不得不采用的方法。
这个例子展示了我学习新技能两个关键点:
1、学习新技能的最好方法就是找到需要解决的问题!
2、在有用之前,您不需要完全掌握一项技能。
只需要几行代码和一本免费的在线书籍,我就写了一个我实际使用的程序。学习基础知识可能会很乏味,因为我会陷入了数据结构和循环中难以解脱。我第一次学习Python的尝试在几个小时内就失败了。而当我改变策略,开始为现实问题制定解决方案后,最终学习到了一些基本原理。
在编程和数据科学领域有很多东西需要掌握,但是你不需要一次学习所有东西。选择一个你需要解决的问题,开始吧!