Python简介
Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。
Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。
-
**Python 是一种解释型语言:**这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。
-
**Python 是交互式语言:**这意味着,您可以在一个Python提示符,直接互动执行写你的程序。
-
**Python 是面向对象语言:**这意味着Python支持面向对象的风格或代码封装在对象的编程技术。
-
**Python 是初学者的语言:**Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发,从简单的文字处理到 WWW 浏览器再到游戏。
Python 发展历史
Python 是由 Guido van Rossum 在八十年代末和九十年代初,在荷兰国家数学和计算机科学研究所设计出来的。
Python 本身也是由诸多其他语言发展而来的,这包括 ABC、Modula-3、C、C++、Algol-68、SmallTalk、Unix shell 和其他的脚本语言等等。
像 Perl 语言一样,Python 源代码同样遵循 GPL(GNU General Public License)协议。
现在 Python 是由一个核心开发团队在维护,Guido van Rossum 仍然占据着至关重要的作用,指导其进展。
Python 特点
-
**1.易于学习:**Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单。
-
**2.易于阅读:**Python代码定义的更清晰。
-
**3.易于维护:**Python的成功在于它的源代码是相当容易维护的。
-
**4.一个广泛的标准库:**Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容很好。
-
**5.互动模式:**互动模式的支持,您可以从终端输入执行代码并获得结果的语言,互动的测试和调试代码片断。
-
**6.可移植:**基于其开放源代码的特性,Python已经被移植(也就是使其工作)到许多平台。
-
**7.可扩展:**如果你需要一段运行很快的关键代码,或者是想要编写一些不愿开放的算法,你可以使用C或C++完成那部分程序,然后从你的Python程序中调用。
-
**8.数据库:**Python提供所有主要的商业数据库的接口。
-
**9.GUI编程:**Python支持GUI可以创建和移植到许多系统调用。
-
**10.可嵌入:**你可以将Python嵌入到C/C++程序,让你的程序的用户获得"脚本化"的能力。
python介绍
python的创始人为吉多·范罗苏姆(Guido van Rossum)
目前python主要应用领域:
·云计算
·WEB开发
·科学运算、人工智能
·系统运维
·金融:量化交易,金融分析等,作为动态语言的python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛
·图形GUI
python是一门什么样的语言?
python是一门动态解释型的强类型定义语言
python的优缺点
优点:
-
python的定位是“优雅”“明确”“简单”,所以python程序看上去总是简单易懂
-
开发效率非常高,python有非常强大的第三方库
-
高级语言
-
可移植性——如果你小心地避免使用依赖于系统的特性,那么你的所有python程序无需修改就几乎可以在市场上所有的系统平台上运行
-
可扩展性——如果你需要你的一段关键代码运行的更快或者希望某些算法不公开,你可以把你的部分程序用C或者C++写,然后在你的python程序中使用它们
-
可嵌入性
缺点:
-
速度慢,大多情况下用户是无法直接感知到的,比如C运行一个程序花了0.01秒,python是0.1秒,这样C语言直接比python快了10倍,算是非常夸张了,但是无法直接通过肉眼感知到,因为一个正常人所能感知的时间最小单位是0.15-0.4s左右。其实大多情况下python一句完全可以满足对程序速度的要求
-
代码不能加密,因为python是解释型语言,它的源码都是以明文形式存放的
-
线程不能利用多CPU问题,这是python被人诟病最多的一个缺点,GIL即全局解释器锁(Global Interpreter Lock),是计算机程序设计语言解释器用于同步线程的工具,使得任何时刻仅有一个线程在执行,python的线程是操作系统的原生线程。在linux上为pthread,在windows上为wthread,完全由操作系统调度线程的执行。一个python解释器进程内有一条主线程,以及多条用户程序的执行线程。即使在多核CPU平台上,由于GIL的存在,所以禁止多线程的并行执行。
python解释器
当我们编写python代码时,我们得到的是一个包含python代码的以.py为扩展名的文本文件。要允许代码,就需要python解释器去执行.py文件。
-
CPython:最广泛使用的解释器。教程中的所有代码都在CPython下执行。
-
IPython:基于CPython上的一个交互式解释器
-
PyPy:它的目标是执行速度。采用JIT技术,对python代码进行动态编译(注意不是解释),所以可以显著提高python代码的执行速度。
-
Jython:是运行在JAVA平台上的python解释器
-
IronPython:和Jython类似,是运行在微软.net平台上