1.1Python的历史
Python的创始人为吉多·范罗苏姆。年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释编程,作为ABC语言的一种继承。之所以选中Python作为编程的名字,是因为他是BBC电视剧——蒙提·派森的飞行马戏团的爱好者。ABC是由吉多参加设计的一种教学语言。就吉多本人看来,ABC这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,吉多认为是非开放造成的。吉多决心在Python中避免这一错误,并获取了非常好的效果,完美结合了C和其他一些语言。[4]
就这样,Python在吉多手中诞生了。实际上,第一个实现是在Mac电脑上。可以说,Python是从ABC发展起来,主要受到了Modula-3(另一种相当优美且强大的语言,为小型团体所设计的)的影响。并且结合了Unixshell和C的习惯。
当前吉多仍然是Python的主要开发者,决定整个Python语言的发展方向。Python社群经常称呼他是终身仁慈独裁者(BDFL)。
Python2.0于年10月16日发布,增加了实现完整的垃圾回收,并且支持Unicode。同时,整个开发过程更加透明,社群对开发进度的影响逐渐扩大。
Python3.0于年12月3日发布,此版不完全兼容之前的Python源代码。不过,很多新特性后来也被移植到旧的Python2.6/2.7版本。
目前我们使用的Python3.7.4的版本是在年发布的,Python的版本号分为三段,形如A.B.C。其中A表示大版本号,一般当整体重写,或出现不向后兼容的改变时,增加A;B表示功能更新,出现新功能时增加B;C表示小的改动(例如:修复了某个Bug),只要有修改就增加C。
特性与设计哲学Python是完全面向对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多重继承,有益于增强源代码的复用性。Python支持重载运算符,因此Python也支持泛型设计。Python本身被设计为可扩展的。并非所有的特性和功能都集成到语言核心。Python提供了丰富的API和工具,以便程序员能够轻松地使用C、C++、Cython来编写扩展模块。Python的设计哲学是“优雅”、“明确”、“简单”。Python开发者的哲学是“用一种方法,最好是只有一种方法来做一件事”,也因此它和拥有明显个人风格的其他语言很不一样。在设计Python语言时,如果面临多种选择,Python开发者一般会拒绝花俏的语法,而选择明确没有或者很少有歧义的语法。这些准则被称为“Python格言”。
Python的优缺点Python的优点很多,简单的可以总结为以下几点。
1.简单和明确,做一件事只有一种方法。
2.学习曲线低,跟其他很多语言相比,Python更容易上手。
3.开放源代码,拥有强大的社区和生态圈。
4.解释型语言,天生具有平台可移植性。
5.对两种主流的编程范式(面向对象编程和函数式编程)都提供了支持。
6.可扩展性和可嵌入性,例如在Python中可以调用C/C++代码。
7.代码规范程度高,可读性强,适合有代码洁癖和强迫症的人群。
Python的缺点主要集中在以下几点。
1.执行效率稍低,因此计算密集型任务可以由C/C++编写。
2.代码无法加密,但是现在很多公司都不销售卖软件而是销售服务,这个问题会被弱化。
3.在开发时可以选择的框架太多(如Web框架就有多个),有选择的地方就有错误。