Python这个东西在中国,大概是从2017年末开始,突然就火了起来的。

此前,对于Python,乃至编程,绝大多数程度上都是专业人士的话题,在普通大众层面上起不了波澜。

为什么Python突然就火了起来了呢?我来简要分析一下,主要有以下三点:

人工智能与机器学习的兴起

最近几年,大数据、人工智能、机器学习越来越受人关注,以至于普通人都对其有所耳闻。而这样的人才供不应求,薪资水平相当高,也会有很多人希望能够学习它们。

而Python语言简单,且拥有庞大的外部库,尤其是许多与上述内容相关的库,如Matplotlib、Numpy、Pandas、SciPy、TensorFlow。这些库在Python中都是相当有名气的,使用起来也较为方便。因此,Python也成为了大数据、人工智能、机器学习的主要语言从而拥有相当多的学习者。

教育与考试的推动

在2017年初,网传浙江出台了一份关于新高中信息技术教材的方案,将围绕Python进行并增加编程相关知识点:

不同,

  • 取消《多媒体技术应用》模块(也就是说,不再考察Photoshop和Flash了)
  • 取消对Excel、Access软件使用的考察
  • 编程语言将换用Python
  • 将使用Python + matplotlib + pandas ,并直接编程来绘制图表、操纵数据、进行数据可视化,来替代之前有关Excel和Access的考察
  • 算法与程序设计模块也将使用Python,并新增基础数据结构知识(线性数据结构,与非线性数据结构中的树与二叉树)

顺带一提,接下去的高考的信息技术考查形式不明确,但是估计不会改变,仍然是100%纸笔闭卷测试。(如果有变化,将及时更新)

(上面对知乎上的相关问题的原文进行了重新排版,重点部分已加粗)

那时我虽然还没有重新开始使用Python,但是对于这项改革方案还是相当满意的,最大的原因是VB实在是太老了……当然,浙江的这项方案也算是开了高中信息技术教育的先例吧。由于信息技术在浙江属于高考的选考科目,所以这项改革也不会像其他教育改革那样走过场的。说到教育改革,我想过很多,不过这里就不再赘述了。

不过我不是浙江的中学生,所以我对此并不太关注。

到了2017年末,我又看到了一条消息:全国计算机等级考试进行了调整,在二级考试中新增“Python语言程序设计”科目:

(重点部分已加粗)

这就比较厉害了。之前是省级的改革,现在是国家级的。我当时还想着报名参加考试,结果发现是九月份才开始考的。

这个消息一出,许多技术相关的媒体都纷纷报道上面的事情,并且对Python的优势和前景进行了分析。有人甚至在回顾AlphaGo击败柯洁的时候说“与其说是 AlphaGo 打败了柯洁,不如说是 Python 打败柯洁”(当然这句话稍显片面)。

与此同时,网传山东的新版小学信息技术教材中涉及到了Python。

为什么Python在中国突然就火了起来了呢?-LMLPHP

虽然不知道具体讲的时候是怎么讲的,而且目前只知道这一页,并不知道讲的具体内容,但是这也能体现出来,随着国家和大众对程序设计教育的重视,Python作为比较容易的编程语言正在走进初级教育。

不过,从下面这篇微博中看,应该是真的。

为什么Python在中国突然就火了起来了呢?-LMLPHP

另外,2017年12月29日,教育部印发《普通高中课程方案和语文等学科课程标准(2017年版)》,并要求各地于2018年秋季开始执行。其中对于信息技术,相比于 2003 年版的课程标准,“新课标”大幅度减少了对于基本软件使用的要求,而大幅度提升了在编程、计算思维、算法方面的思维要求,以及人工智能、开源硬件、网络空间安全等知识面要求。

为什么Python在中国突然就火了起来了呢?-LMLPHP

这种情况下,如果之前浙江的高考改革方案为真,那么其他地区应该会借鉴浙江的经验来编制或选择教材等内容。另外,鉴于竞赛需要,除了发达地区和重点高中外,信息技术也会逐渐被更多地区的高中所重视。

在这些教育政策的推动下,大众自然会对Python以及编程重视起来。

另外,编程甚至开始从娃娃抓起了。

最有名的面向于儿童的编程教育工具是Scratch。不过它仅仅是教学用的工具,而非能够具有高效生产力的语言。

为什么Python在中国突然就火了起来了呢?-LMLPHP

而Python却能够解决它的不足,且语法较为简单。某种意义上,学习Python可以作为学习Scratch的下一步操作。另外,树莓派等板载计算机可以很好地使用Python通过GPIO来控制电子器件,这一点和Scratch比较相似;Python拥有非常多的外部库来轻松实现不可思议的功能。这也应该是Python在青少年编程教育领域比较火的原因吧。

外挂的好奇心

教育和考试的推动,推动的是学生和家长对Python的兴趣。而对于其他人的兴趣,我想应该是因为最近的“跳一跳”的外挂了。

自从微信推出“跳一跳”后,玩家纷纷为了刷分日夜奋战,当然也少不了那些使用外挂的人。有一些人靠外挂牟利,而有一些人写出外挂后无偿地分享出来。在形形色色的外挂中,以Python写出的外挂最多(说实话,一个小游戏居然有如此多的用不同语言写的外挂,而且还是开源的,说明很多写外挂的行为实际上有一种炫技的成分)。

为什么Python在中国突然就火了起来了呢?-LMLPHP

而其中,star数最高的外挂也是用Python写的,达到13.1K,远远超过第二名。

为什么Python在中国突然就火了起来了呢?-LMLPHP

后来,网上也出现了形形色色的针对于开发“跳一跳”的外挂的教程。这里面很多也是与Python有关的。我记得在那时,我能够很频繁地在B站推荐给我的视频中看到关于用Python写跳一跳的外挂的视频。我想,应该是因为“跳一跳”规则简单,而且对于计算机来说,色块简单,更加容易实现自动化,是学习Python的高级功能的很好的工具吧。

为什么Python在中国突然就火了起来了呢?-LMLPHP

我想,对于大众,这也是一个接触Python的机会;也许一些人会惊叹于Python的强大,进而有学习的欲望。

于是后来,我发现,关于Python的其他方面的教程越来越多,如爬虫、数据分析。

我不是专业人士,如果分析有些许瑕疵,还望海涵。

参考资料

10-07 14:43