我最初想把它放进教程系列中,不过后来觉得不太合适,就移出了。再后来,我觉得加上这个也算是我为什么写这个教程的原因吧,于是仍然作为第0章第2节加入了。
短暂的初体验
我其实是在2012年1月才接触Python的。在此之前,我更多接触的是PHP和HTML,还有一提起来就觉得很羞耻的易语言,虽然我对他们也都是一窍不通——那时只知道用Discuz进行傻瓜式的建站,版本管理工具用的还是SVN。

那时,我看当时某个好友的个人博客的时候,看到他发了一些关于Python的基础教程(虽然那些教程烂尾了,而且现在也找不到了——他换了博客地址,原先的博客地址成了赌博网站的天堂;那些文章也没有迁移过来)。那时我就试着下载了Python,并试着学了输出和输入语句,以及一些简单的运算语句。然而,当时也没有学下去。
那时,大家貌似还在纠结Python 3的不向下兼容,尤其是输出语句的不兼容。我写代码的时候还是遵循了新的标准,后来自然是用了最新版。

当时还接触了easyGUI,不过我想现在应该没多少人用它了吧。
不过此后,由于我需要写窗口类应用,而一般的VC++我根本没时间学(至今也是),相比于此,易语言明显在写小型的窗口类应用上更加方便,所以我还是转向了易语言,于是Python就被无情地抛弃了(说实话它也可以写窗口类应用的),此后在高中的时间内再也没有想过它。
不过在那时,我已经知道了Python可以开发网站了。不过,当时的新浪云在Python实例的文档中把Python的效果搞得很丑,所以也对当时的我造成了一定的心理阴影。
蜻蜓点水般的重新使用
我记得我重新使用Python是在2017年的事情了。
虽说我大学之后很长一段时间都没有学过Python,但是我还是从一些IT行业的资讯中得知了关于Python的进展。我也知道,有一种叫做树莓派的板载电脑,可以通过Python控制GPIO、摄像头等,进而控制外部电路元件,实现意想不到的效果。
2017年的时候,我被骗去当一个自媒体的“负责人”。我当时还为了各项指标的分析,在网上找关于QQ空间的爬虫(因为QQ空间不提供相关的API)。最后找到了一个,效果还相当好。那个就是用Python写的。不过,那个爬虫爬取的信息并不全,而且用到的MongoDB和Redis我都不会。我当时因为考试就没有研究下去。那也是时隔五年再次使用Python吧。
只是后来我才意识到这个“负责人”是一个骗局。我试图挽回局面,但是被骗的越来越厉害,好心当成驴肝肺,甚至连驴肝肺都不如。
因比赛而学习
不过,在另一个领域,我还是可以大显身手的。
因为我参加的团队在2016年的全国大学生网络商务创新应用大赛上得了特等奖,所以班里有人就找我组建团队,参加2017年的全国大学生网络商务创新应用大赛。
我最初还是想和以前一样,写创业计划书式的方案。不过我的一大特征就是懒,就算是脑子里有想法,也懒得写出来。结果我发现,团队的其他成员居然等着我想方案……
那个比赛有四个方向。我后来和老师谈论这个问题的时候,老师建议我们做大数据组的项目,于是我就试着去做。但是,主办方提供的软件我始终不会用。而且,老师严重高估我们拥有的的时间,活动快结束了还告诉我们建议做这个。最后,我们就做了网络商务创新组的比赛。
老师希望我把去年的项目稍作修改,加上一些能够体现大数据的表,再交上去。但是我并不同意——我想做一些新的东西。于是我就想到了之前的爬虫。
当然,原先的爬虫肯定不行。很巧,我找到了使用MySQL存储数据的脚本。不过,爬取的数据不足,我费尽千辛万苦才找到爬取更多数据的方法,并扩充了脚本,用它成功地完成了方案,并且拿到了特等奖。
那一段时间,我应该是疯狂恶补Python的知识吧。与此同时,我惊叹于Python的切片和迭代,但始终搞不懂生成器和迭代器。

写,然后知不会
比赛结束后,我希望做一些微信公众号相关的事情。我查阅了微信的开发者平台的文档,发现他们的案例就是用Python写的,然而……他们用的是Python 2.7的代码,web.py的框架。正好我当时买了一个月的腾讯云主机,我就想试试。结果,我发现非常狗血的情况:web.py的作者就是早已经自杀的亚伦·斯沃茨——我高中的时候看过关于他的事迹;也许是因此,web.py没有很好地适配Python 3。我又手忙脚乱地装了Django,结果折腾了半天也不会用。于是我只好作罢。

话说回来,在比赛后,我希望把之前的那个爬虫写成一套完整的解决方案。但是,这时的我,脑子里一团乱麻。看到别人写的程序,各个类和函数错落有致,而自己的一塌糊涂,我实在无心写下去。
不过我还是要写。于是我只能硬着头皮写,结果半路上频频出现意外,进展也相当缓慢。
后来我才感觉到,自己其实对Python根本不算是会啊。零零散散的知识,拼凑不起来体系的。若要学好,必须推倒重来。也许,将来的我就要靠这个吃饭了。

这也是我写“伪·从零开始学Python”这个系列的原因吧——督促自己学习,同时传道授业解惑,让自己与他人都受益。
只有当你能把一个理论讲得连女仆都能听懂,你才算真懂了。
——卢瑟福
我也希望自己能够学下去,写下去。
毕竟有些事情自己不做,以后会被别人做的;而有些事情自己不做,就再也没有人做了。
网友评论