一、简介
Python 是Guido van Rossum在1989年编写的一个编程语言。当时C语言和shell比较盛行,但在开发大型系统时C语言开发效率低下,shell语言是胶水性语言太过灵活。所以“龟叔”就发明了介于C与shell之间的Python,Python当时的设计哲学是“优雅”、“明确”、“简单”。所以Python程序简单明了易读,Python是完全面向对象的语言,函数、模块、数字、字符串都是对象,并且支持继承、重载、派生、多继承、重载运算符、动态类型等。
Python还提供了丰富的API和工具,以便可以使用C语言、C++等来扩充模块。丰富的API和工具也使得它的应用十分广泛,主要应用于:图像处理、数学处理、文本处理、数据库编程、网络编程、Web编程、多媒体应用、数据分析、网络爬虫等。
优点:
- 简单易学:Python语言简短易读,拥有中文学习文档点击打开链接
- 免费开源:Python是FLOSS(自由/开放源码软件)之一。使用者可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。
- 高级语言:在使用中不需要考虑其细节,实现细节被封装,要想深层了解可看细节。
- 解释性、可移植:Python程序需要解释器将其源代码翻译成字节码文件,最后在翻译成机器语言。这使得它可以易于移植到不同平台。
- 可扩展、可嵌入:如果希望部分算法不公开或提高速度,可利用C来编写,在Python中使用。也可以将Python嵌入到C中,来提供脚本功能。
- 面向对象:程序是有数据和功能组合而成的对象构建起来的。
- 丰富的库:Python标准库确实很庞大。它可以帮助处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。这被称作Python的"功能齐全"理念。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。
缺点:
- 运行慢:因为Python每次运行时都需要解释器重新解释,而不像其它语言编译一次运行多次,所以它的运行速度就比较慢。
- 语法独特:空白缩进是它的特点也是它的缺点,利用不好很容易报错。
二、解释器
Python是跨平台的脚本语言,Python规定了一个Python语法规则,实现了Python语法在多个平台上的运行就需要它的解释程序,此就为Python解释器。
CPython(ClassicPython),C语言开发的Python。这是最常用的Python版本,在命令模式下输入python就是启动CPython解释器,以>>>作为提示符。
IPython,是基于CPython之上的一个交互式解释器,只是在交互方式上有所增强,执行代码的功能和CPython是一样的。其实以In[序号]:作为提示符。
Jython(原名JPython;Java语言实现的Python,现已正式发布)其实运行在Java平台上的解释器,可以直接把Python代码编译成Java字节码执行,Jython也可以直接调用Java的各种函数库
PyPy(使用Python语言写的Python)它的目的是速度,PyPy采用JIT技术,对Python代码进行动态编译,所以可以提高速度,但同样代码在PyPy和CPython下的运行结果可能不同,需要注意。
IronPython(面向.NET和ECMA CLI的Python实现)。IronPython能够直接调用.net平台的各种函数库。可以将Python程序编译成.net程序。是在微软平台上运行的解释器。
注:Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.Net平台交互,最好的办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。
~第一次的博客~