推行 热搜:

数百种编程言语,而我为什么要学Python?

   日期:2017-11-21     阅读:3183    批评:0    
中心提示:假如让你从数百种的编程言语中选择一个入门言语?你会选择哪一个?是使用率最高、临时占领排行榜的常青藤 Java?是易于上手,难
假如让你从数百种的编程言语中选择一个入门言语?你会选择哪一个?
是使用率最高、临时占领排行榜的常青藤 Java?是易于上手,难以通晓的 C?照旧在游戏和东西范畴仍占主流位置的 C++?亦或是占据 Windows 桌面使用顺序豆剖瓜分的 C#?……
我想,每团体能够会依据任务要求的必定条件、兴味喜好的充沛条件,做出相应差别的选择。也有许多工程师在学习一门新的技能时,都市担忧本人所学的技能能否会越来越盛行,只管即便去防止学习了一个十分小众和冷门的技能。这种担心是可以了解的,终究,一门技能运用的人越多,关于晚期学习这门技能的工程师来说,就有越多的益处和劣势。与此同时,假如学习了一门冷门的技能,不光好汉无用武之地,并且,在求职市场上也没有什么劣势。要问我的入门编程言语选择,我首选肯定是 Python,其详细缘由可以援用一位网友的答复,「学完 Python,可以上天」。

Python 盛行度
假如各人身处互联网,肯定可以亲身地感觉到 Python 言语的盛行水平。Python 言语由于其复杂易学、语法柔美、使用范畴普遍等诸多长处,俘获了大批的粉丝。但是,拿不出确切的证据,许多开辟者也无法压服本人静下心来学习。接上去我们就用数据来语言。
编程言语排行榜
起首,我们理解一下近期编程言语排行榜中,Python 言语排名的变革。TIOBE 每个月公布的编程言语排行榜是编程言语盛行趋向的一个目标,每个月更新。这份排行榜排名基于互联网上有经历的工程师、课程和第三方厂商的数目,运用搜刮引擎停止盘算而得,肯定水平上反响了编程言语的热度。

2017年9月TIOBE编程言语排行榜

2017年10月TIOBE编程言语排行榜

2017年11月TIOBE编程言语排行榜
从近三个月的排行看,Python 不断波动在排行榜的前五名。但编程言语排行榜仅能反响 Python 言语当下的盛行水平,并不克不及答复 Python 能否越来越盛行这个题目。不外,我们可以从 TIOBE 公布的汗青数据中找到一些线索。在 2015 年 2 月份公布的 TIOBE 编程言语排行榜中,Python 还排在第 8 名的地位,短短两年半的工夫,Python 言语曾经蹿升到第 4 名,其上升速率不行谓烦懑。
Google trends
既然 TIOBE 的编程言语排行榜是依据搜刮引擎失掉的数据,那么,我们也可以经过搜刮引擎失掉 Python 的搜刮指数,经过搜刮指数来检查 Python 言语热度的变革。图1.1 给出了近来 4 年,Python 这个要害词的 Google 搜刮指数。

图 1.1 Python 的 Google 搜刮指数
图1.1中可以看到,从环球范畴来看,Python 言语是越来越盛行的,其热度超越了以往任何时分。从中国的搜刮指数来看,Python 言语曾经不是越来越盛行这么复杂了,而是呈现了迸发式的增长。2014 年曩昔,Python 在中都城属于小众言语,从 2014 年开端,Python 在中国越来越火爆。一个风趣的现实是,在图 1.1 给出的 Python 搜刮指数中,Python 在中国的搜刮每年都市有一个十分分明的、向下的尖刺。这个尖刺地点的工夫恰好与春节的工夫符合,阐明春节对一切中国人都是一个紧张的节日,在春节时期,很少有人还在专研技能了。
微信搜刮指数
我们再来看一下最新公布的微信搜刮指数中,Python 言语的热度怎样。图 1.2 给出了Python、Java、PHP 和 Ruby 的微信搜刮指数比照图。

图 1.2 Python的微信搜刮指数
由于微信最多支持 4 个要害词停止比拟,因而,我们选择了 Java、PHP、Ruby 与 Python 停止比拟。选择 Java 是由于它是一门比 Python 运用愈加普遍的编程言语;选择 PHP 是由于它被以为是“天下上最好的”编程言语;选择 Ruby 是由于,它是一切编程言语中,与 Python 定位近来靠近的编程言语。从图中可以看出,Python 言语和 Java 言语的微信搜刮指数遥遥抢先,而且,Python 言语的微信搜刮指数比 Java 言语还要略高一点。
基于以上的编程言语排行榜、Google 搜刮指数和微信搜刮指数这几个差别的数据泉源,检视了 Python 言语的盛行水平。如今,我们可以十分明白的得出一个结论——Python 言语越来越盛行,并且如今十分火。
那么为什么 Python 言语会越来越盛行呢?
缘由诸多,如越来越多的工程师运用 Python 停止大数据处置;科研任务者开端运用 Python 来停止数据剖析;零碎办理员运用 Python 办理 Linux 零碎;开源的云盘算平台 OpenStack 运用 Python 言语开辟;许多编程喜好者运用 Python 停止爬虫等。但是,笔者以为,Python 言语之以是越来越盛行,运用越来越普遍,次要照旧得益于其本身的诸多长处。
对 Python 的爱与恨:那些不得不说的优缺陷
明显的长处
Python 言语拥有诸多的长处,这此中,以下几个长处特殊明显:
复杂易学: Python 言语绝对于其他编程言语来说,属于比拟容易学习的一门编程言语,它注意的是怎样处理题目而不是编程言语的语法和构造。正是由于 Python 言语复杂易学,以是,曾经有越来越多的初学者选择 Python 言语作为编程的入门言语。比方,在浙江省 2017 年高中信息技能变革中,《算法与顺序设计》课程将运用 Python 言语交换原有的 VB 言语。
语法柔美: Python 言语力图代码简便、柔美。在 Python 言语中,接纳缩出去标识代码块,经过增加无用的大括号,去除语句末端的分号等视觉杂讯,使得代码的可读性明显进步。阅读一段精良的 Python 顺序就觉得像是在读英语一样,它使你可以专注于处理题目,而不必太纠结编程言语自身的语法。
丰厚弱小的库: Python 言语号称自带电池(Battery Included),寓意是 Python 言语的类库十分的片面,包括理解决种种题目的类库。无论完成什么功用,都有现成的类库可以运用。假如一个功用比拟特别,规范库没有提供相应的支持,那么,很大约率也会有相应的开源项目提供了相似的功用。公道运用 Python 的类库和开源项目,可以疾速的完成功用,满意业务需求。
开辟服从高: Python 的各个长处是相反相成的。比方,Python 言语由于有了丰厚弱小的类库,以是,Python 的开辟服从可以明显进步。绝对于 C、C++ 和 Java 等编译言语,Python 开辟者的服从进步了数倍。完成相反的功用,Python 代码的文件每每只要 C、C++ 和 Java 代码的 1/5~1/3。固然 Python 言语拥有许多吸引人的特性,但是,各大互联网公司普遍运用 Python 言语,很大水平上是由于 Python 言语开辟服从高这个特点。开辟服从高的言语,可以更好的满意互联网疾速迭代的需求,因而,Python 言语在互联网公司运用十分普遍。
使用范畴普遍: Python 言语的另一大长处便是使用范畴普遍,工程师可以运用 Python 做许多的事变。比方,Web 开辟、网络编程、主动化运维、Linux 零碎办理、数据剖析、迷信盘算、人工智能、呆板学习等等。Python 言语介于剧本言语和零碎言语之间,我们依据需求,既可以将它当做一门剧本言语来编写剧本,也可以将它当做一个零碎言语来编写效劳。
不行无视的缺陷
毫无疑问,Python 的确有效许多的长处,每一个长处看起来都十分吸引人。但是,Python 并不是没有缺陷的,最次要的缺陷有以下几个:
Python 的实行速率不敷快。固然,这也不是一个很严峻的题目,普通状况下,我们不会拿 Python 言语与 C/C++ 如许的言语停止间接比拟。在 Python 言语的实行速率上,一方面,网络或磁盘的耽误,会抵消失局部 Python 自身耗费的工夫;另一方面,由于 Python 特殊容易和 C 联合起来,因而,我们可以经过别离一局部需求优化速率的使用,将其转换为编译好的扩展,并在整个零碎中运用 Python 剧本将这局部使用衔接起来,以进步顺序的全体服从。
Python 的 GIL 锁限定并发: Python 的另一个大题目是,对多处置器支持欠好。假如读者打仗 Python 工夫比拟长,那么,肯定听说过 GIL 这个词。GIL 是指 Python 全局表明器锁(Global Interpreter Lock),当 Python 的默许表明器要实行字节码时,都需求先请求这个锁。这意味着,假如试图经过多线程扩展使用顺序,将总是被这个全局表明器锁限定。固然,我们可以运用多历程的架构来进步顺序的并发,也可以选择差别的 Python 完成来运转我们的顺序。
Python 2 与 Python 3 不兼容: 假如一个平凡的软件或许库,不克不及够做到后向兼容,那么,它会被用户无情的丢弃了。在 Python 中,一个槽点是 Python 2 与 Python 3 不兼容。由于 Python 没有向后兼容,给一切的 Python 工程师带来了有数的懊恼。
怎样上手?
理解了 Python 的全体趋向及优缺陷,接上去天然是怎样学习 Python?在此笔者的发起是:
找一本粗浅易懂比拟好的教程,无须多种选择,仅精选一本,从头至尾看完。将教程中的案例本人亲手理论一遍。
经过实践项目练手。假如仅是纸上谈兵,能够过目就忘,以是最好是要有真实的项目做。留意,真实项目纷歧定非要是贸易项目,比方本人入手搭建网站,其要害是要中心功用完好。
最好能找到一个曾经会 Python 的人。问他一点学习计划的发起,然后在遇到卡壳的中央找他辅导。如许会事半功倍。但是,要学会搜刮,学会怎样更好地发问。
最初,在选择运用哪一门编程言语之前,我还想提示读者的是——“天下上只要两种编程言语,一种是每天被人吐槽但却被普遍运用的编程言语,一种则是无人问津没有存在感的编程言语”。Python 言语作为排名第一的静态范例言语,天然有它的原理。假如我们充沛理解它的优缺陷,在运用的时分,取其精髓去其糟粕,那么,Python 肯定是工程师处理题目的一把白。
 
打赏
 
更多>同类资讯
0相干批评

引荐图文
引荐资讯
点击排行
网站首页  |  关于我们  |  联络方法  |  运用协议  |  版权隐私  |  网站舆图  |  排名推行  |  告白效劳  |  网站留言  |  RSS订阅  |  违规告发  |  手机娱乐官网鄂ICP备14001892号-2
手机娱乐官网Powered By 真实人网络