Python菜鸟入门(三):入手廖雪峰的Python教程读书笔记01

知识点1:Python大神Guido van Rossum何许人也


出生于1956年的Guido van Rossum在1989年自己33岁的时候创立了Python语言。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。ABC是由Guido参加设计的一种教学语言,就Guido本人看来,ABC这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,Guido认为是因为ABC没有开源,Guido决心在Python中避免这一错误,所以在Python上就特别重视开源和与其它语言的结合。同时,他还想实现在ABC中闪现过但未曾实现的东西。

就这样,Python在Guido手中诞生了。实际上,第一个实现是在Mac机上。可以说,Python是从ABC发展起来的,主要受到了Modula-3 (另一种相当优美且强大的语言,为小型团体所设计)的影响,并且结合了Unix shell和C语言的习惯。

1991年初,Python发布了第一个公开发行版。尔后,被无数程序员所使用。Guido原居荷兰,1995年移居到美国,并遇到了他现在的妻子。2003年初,Guido和他的家人,包括他2001年出生的儿子一直居住在华盛顿北弗吉尼亚的郊区。随后他们搬迁到硅谷,从2005年12月开始就职于Google公司,期中有一半时间是花在Python上,他用Python语言为Google写了面向网页的代码浏览工具。2012年12月7日Guido加入Dropbox工作。

Python是线上和线下的一种重要的编程语言。Python社区的人赋予他“仁慈大君”的称号,这一称号直接来自英国肥皂剧《Monty Python》(飞行马戏团)。Guido当初之所以选中Python作为语言的名字,是因为他太喜欢这部肥皂剧了。


知识点2:Python语言与C语言的比较

C语言是用来编写操作系统的贴近硬件的语言,所以C语言适合开发那些追求运行速度、充分发挥硬件性能的程序。而Python是用来编写应用程序的高级编程语言。

当你用一种语言开始做真正的软件开发时,你除了编写代码外,还需要很多基本的已经写好的现成的东西,来帮助你加快开发进度。比如说,编写一个电子邮件客户端。如果先从最底层开始编写网络协议相关的代码,那估计一年半载也开发不出来。高级编程语言通常都会提供一个比较完善的基础代码库,让你能直接调用,比如针对电子邮件协议的SMTP库,针对桌面环境的GUI库,在这些已有的代码库的基础上开发,一个电子邮件客户端几天就能开发出来。


Python就为我们提供了非常完善的基础代码库,覆盖了网络、文件、GUI、数据库、文本等大量内容,被形象地称作“内置电池(batteries included) ”。 用Python开发,许多功能不必从零开始编写,直接使用现成的即可。

除了内置的库外,Python还有大量的第三方库,也就是别人开发的供你直接使用的东西。当然,如果你的代码通过很好的封装,也可以作为第三方库给别人使用。


最后瞅瞅Python的缺点。第一个缺点就是运行速度慢,和C程序相比非常慢,因为Python是解释型语言,你的代码在执行时会一行一行地翻译成CPU能理解的机器码,这个翻译过程非常耗时,所以很慢。而C程序是运行前直接编译成CPU能执行的机器码,所以非常快。

但是大量的应用程序不需要这么快的运行速度,因为用户根本感觉不出来。例如开发一个下载MP3的网络应用程序,C程序的运行时间需要0.001秒,而Python程序的运行时间需要0.1秒,慢了100倍,但由于网路更慢,需要等待1秒,你想,用户能感觉到1.001秒和1.1秒的区别吗?

Python的第二个缺点就是代码不能加密。如果要发布你的Pyton代码,实际上就是发布源代码,这一点跟C语言不同。C语言不用发布源代码,只要把编译后的机器码(也就是在Windows上常见的xxx.exe文件)发布出去。要从机器码反推出C代码是不可能的。所以,凡是编译型的语言,都没有这个问题,而解释型的语言,则必须把源码发布出去。

这个缺点仅限于你要编写的软件需要卖给别人挣钱的时候。好消息是目前的互联网时代,靠卖软件授权的商业模式越来越少了,靠网站和移动应用卖服务的模式越来越多了,后一种模式不需要把源码给别人。

                                                                                                                       

猜你喜欢

转载自blog.csdn.net/icanseetheworld/article/details/80331515