前言
本篇是Python学习笔记系列的第(零)篇,主要对Python语言的由来及其优缺点进行简介。
Python的由来
Python是一种用来编写应用程序的高级编程语言。
它是由著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的。
它为我们提供了非常完善的基础代码库,覆盖了网络、文件、GUI、数据库、文本等大量内容,被形象地称作“内置电池(batteries included)”。用Python开发,许多功能不必从零编写,直接使用现成的即可。
除了内置的库外,Python还有大量的第三方库,也就是别人开发的,供你直接使用的东西。当然,如果你开发的代码通过很好的封装,也可以作为第三方库给别人使用。
许多大型网站就是用Python开发的,例如YouTube、Instagram,还有国内的豆瓣。很多大公司,比如Google,甚至NASA(美国航空航天局)都大量地使用Python。
总的来说,Python的哲学就是简单优雅,尽量写容易看明白的代码,尽量写少的代码。
那Python适合开发哪些类型的应用呢?
-
首选是网络应用,包括网站、后台服务等等;
-
其次是许多日常需要的小工具,包括系统管理员需要的脚本任务等等;
-
另外就是把其他语言开发的程序再包装起来,方便使用。
Python的缺点
-
运行速度慢
Python是解释型语言,代码在执行时会一行一行地翻译成CPU能理解的机器码,这个翻译过程非常耗时,所以很慢。
但是大量的应用程序不需要这么快的运行速度,因为用户根本感觉不出来。例如开发一个下载MP3的网络应用程序,C程序的运行时间需要0.001秒,而Python程序的运行时间需要0.1秒,慢了100倍,但由于网络更慢,需要等待1秒,你想,用户能感觉到1.001秒和1.1秒的区别吗?这就好比F1赛车和普通的出租车在北京三环路上行驶的道理一样,虽然F1赛车理论时速高达400公里,但由于三环路堵车的时速只有20公里,因此,作为乘客,你感觉的时速永远是20公里。
-
代码不能加密
如果要发布你的Python程序,实际上就是发布源代码,这一点跟C语言不同,C语言不用发布源代码,只需要把编译后的机器码发布出去。所以,凡是编译型的语言,都没有这个问题,而解释型的语言,则必须把源码发布出去。
不过,现在靠卖软件授权的商业模式越来越少,靠网站和APP卖服务的模式越来越多,后一种模式不需要把源码给别人。而且,现在如火如荼的开源运动和互联网自由开放的精神是一致的,互联网上有无数非常优秀的像Linux一样的开源代码,我们千万不要高估自己写的代码真的有非常大的“商业价值”,那些大公司的代码不愿意开放的更重要的原因是代码写得太烂了,一旦开源,就没人敢用他们的产品了。
-
其他缺点
当然,Python还有其他若干小缺点,请自行忽略,就不一一列举了。