> The fear of the LORD is the beginning of knowledge; fools despise wisdom and instruction.(PROVERBS 1:7)
>敬畏耶和华是知识的开端,愚妄人藐视智慧和训诲。
#关于Python的故事
如同学习任何一种自然语言比如英语、或者其它编程语言比如汇编一样,总要说一说有关这种语言的事情,有的可能就是八卦,越八卦的越容易传播。当然,以下的所有说法中,难免充满了自恋,因为你看不到说Python的坏话。这也好理解,如果要挑缺点是比较容易的事情,但是找优点,不管是对人还是对其它事物,都是困难的。这也许是人的劣根之所在吧,喜欢挑别人的刺儿,从而彰显自己在那方面高于对方。特别是在我们这个麻将文化充斥的神奇地方,更多了。
废话少说点(已经不少了),进入有关Python的话题。
##Python的昨天今天和明天
这个题目有点大了,似乎回顾过去、考察现在、张望未来,都是那些掌握方向的大人物(司机吗?)做的。那就让我们每个人都成为大人物吧。因为如果不回顾一下历史,似乎无法满足学习者的好奇心;如果不考察一下现在,学习者不放心(担心学了之后没有什么用途);如果不张望一下未来,怎么能吸引(也算是一种忽悠吧)学习者或者未来的开发者呢?
###Python的历史
Python的创始人为吉多·范罗苏姆(Guido van Rossum)。关于这个人开发这种语言的过程,很多资料里面都要记录下面的故事:
>1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。之所以选中Python作为程序的名字,是因为他是一个蒙提·派森的飞行马戏团的爱好者。ABC是由吉多参加设计的一种教学语言。就吉多本人看来,ABC这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,吉多认为是非开放造成的。吉多决心在Python中避免这一错误,并取得了非常好的效果,完美结合了C和其他一些语言。
这个故事我是从维基百科里面直接复制过来的,很多讲Python历史的资料里面,也都转载这段。但是,在我来看,这段故事有点忽悠人的味道。其实,上面这段中提到的,吉多为了打发时间而决定开发Python的说法,来自他自己的这样一段自述:
>Over six years ago, in December 1989, I was looking for a "hobby" programming project that would keep me occupied during the week around Christmas. My office (a government-run research lab in Amsterdam) would be closed, but I had a home computer, and not much else on my hands. I decided to write an interpreter for the new scripting language I had been thinking about lately: a descendant of ABC that would appeal to Unix/C hackers. I chose Python as a working title for the project, being in a slightly irreverent mood (and a big fan of Monty Python's Flying Circus).(原文地址:https://www.python.org/doc/essays/foreword/)
首先,必须承认,这个哥们儿是一个牛人,非常牛的人。此处献上我的崇拜。
其次,读者千万别认为Python就是一个随随便便就做出来的东西,就是一个牛人一冲动搞出来的东西。人家也是站在巨人的肩膀上的。
第三,牛人在成功之后,往往把奋斗的过程描绘的比较简单,或者是谦虚?或者是让人听起来他更牛?反正,我们看最后结果的时候,很难感受过程中的酸甜苦辣。
不管怎么样,牛人在那时刻开始创立了Python,而且,他更牛的在于具有现代化的思维:开放。通过Python社区,吸引来自世界各地的开发者,参与Python的建设。在这里,请读者一定要联想到Linux和它的创始人芬兰人林纳斯·托瓦兹。两者都秉承“开放”思想,得到了来自世界各地开发者和应用者的欢呼和尊敬。也请大家再联想到另外一个在另外领域秉承开放思想的人——邓小平先生,他让一个封闭的破旧老水车有了更新。
###Python的现在
应该说Python现在表现不错。除了在Web开发方面有很多应用之外(当然PHP在这方面也是很不错),在数据分析、机器学习、大数据、云计算等这些时髦的领域,都有它的身影,并且影响力越来越大了。此外,还有自动化运维、自动化测试。
读者可以到这个网站看一看Python的应用案例:[https://www.python.org/about/success/](https://www.python.org/about/success/)。
不过,因为赵国大学教育的问题,致使很多青年才俊对Python了解甚少;更因为赵国的功利化优良传统,青年才俊们最大担心的是学了Python——这种学校老师很少甚至从没有提及的怪东西——没有什么用途,因为才俊们已经通过铺天盖地的广告了解到android、iOS开发,于是就认为“软件开发==Android or iOS”,其它都过时了——最希望才俊能够跳出四角天空,用自己的头脑思考、用自己的眼睛看世界,形成独立的判断,不要听信广告——也包括我这里的各种对Python的溢美之词。
###Python的未来
这个不需要描述,它的未来在所有使用者和学习者手中。
##优雅的Python
Python号称是优雅的。但是这种说法仁者见仁智者见智。比如经常听到大师们说“数学美”,是不是谁都能体验到呢?不见得吧。
所以,是不是优雅,是不是简单,是不是明确,只有“谁用谁知道”,只有内行人才能理解。
不过,我特别喜欢下面这句话:**人生苦短,我用Python**。意思就是说,Python能够提高开发效率,让你短暂的人生能够除了工作之外,还有更多的时间休息、娱乐或者别的什么。
或许有的人不相信,那就比较一下吧。
##跟别的语言比较
“如果你遇到的问题无法用Python解决,这个问题也不能用别的语言解决。”——这是我向一些徘徊在Python之外的人常说的,是不是有点夸张了呢?
最近看到了一篇文章,[《如果编程语言是女人》](http://www.vaikan.com/if-programming-languages-are-woman/),我转载如下(考虑到篇幅所限,所了适当删改,要阅读非删减版,请通过连接查看原文):

>PHP是你的豆蔻年华的心上人,她是情窦初开的你今年夏天傻乎乎的追求的目标。玩一玩可以,但千万不要投入过深,因为这个女孩有严重的问题。
>Ruby是脚本家族中一个非常漂亮的孩子。第一眼看她,你的心魄就会被她的美丽摄走。她还很有有趣。起初她看起来有点慢,不怎么稳定,但近些年来她已经成熟了很多。
>Python 是Ruby的一个更懂事的姐姐。她优雅,新潮,成熟。她也许太过优秀。很多小伙都会说“嘿,兄弟,你怎么可能不爱上Python呢!?”。没错,你喜欢Python。你把她当成了一个脾气和浪漫都退烧了的Ruby。
>Java是一个事业成功的女人。很多在她手下干过的人都感觉她的能力跟她的地位并不般配,她更多的是通过技巧打动了中层管理人员。你也许会认为她是很有智慧的人,你愿意跟随她。但你要准备好在数年里不断的听到“你用错了接口,你遗漏了一个分号”这样的责备。
>C++ 是Java的表姐。她在很多地方跟Java类似,不同的是她成长于一个天真的年代,不认为需要使用“保护措施”。当然,“保护措施”是指自动内存管理。你以为我指的是什么?
>C 是C++的妈妈。对一些头发花白的老程序员说起这个名称,会让他们眼睛一亮,产生无限回忆。
>Objective C C语言家族的另外一个成员。她加入了一个奇怪的教会,不愿意和任何教会之外的人约会。
虽然是娱乐,或许有争议,权当参考吧。
所以,Python值得拥有。
在正式开始学习之前,首先要告诉你成为Python高手的秘诀。
##The Zen of Python
这就是著名的《Python之禅》。
>Beautiful is better than ugly.
>Explicit is better than implicit.
>Simple is better than complex.
>Complex is better than complicated.
>Flat is better than nested.
>Sparse is better than dense.
>Readability counts.
>Special cases aren't special enough to break the rules.
>Although practicality beats purity.
>Errors should never pass silently.
>Unless explicitly silenced.
>In the face of ambiguity, refuse the temptation to guess.
>There should be one-- and preferably only one --obvious way to do it.
>Although that way may not be obvious at first unless you're Dutch.
>Now is better than never.
>Although never is often better than *right* now.
>If the implementation is hard to explain, it's a bad idea.
>If the implementation is easy to explain, it may be a good idea.
>Namespaces are one honking great idea -- let's do more of those!
“吃水不忘挖井人”,谁创造了Python,我们一定要感恩并崇拜。
##感谢Guido van Rossum
Guido van Rossum 是值得所有pythoner感谢和尊重的,因为他发明了这个优雅的编程语言。他发明python的过程是那么让人称赞和惊叹,显示出牛人的风采。
Python已经让人心动了。除了心动,还要行动;只有行动,才能“从小工到专家”。
-------
[总目录](./index.md) | [下节:从小工到专家](./02.md)