admin 管理员组文章数量: 1086019
2025年1月1日发(作者:网站网页设计心得)
Python(简介)
Python[1] (英国发音:/ pa θ n/ 美国发音:/ pa θɑ n/), 是一个面对对象的解释型计
算机程序设计语言,由荷兰人Guido van Rossum于1989年创造,第一个公开发行版发行于1991
年。
Python是纯粹的自由软件, 源代码和解释器CPython遵照 GPL(GNU General Public License)协
议[2] 。
Python语法简洁清楚,特色之一是强制用空白符(white space)作为语句缩进。
Python具备丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其
是C/C++)很轻松地联结在一起。常见的一个应用情形是,使用Python迅速生成程序的原型(有
时甚至是程序的最后界面),然后对其中[3] 有尤其要求的部分,用更适宜的语言改写,例如3D
游戏中的图形渲染模块,性能要求尤其高,就能够用C/C++重写,而后封装为Python能够调用的
扩展类库。需要注意的是在您使用扩展类库时也许需要考虑平台问题,某些也许不提供跨平台的
实现。
外文名
Python 经典教材
Head First Python
发行时间 1991年
设计者 Guido van Rossum
最新版本 3.6.0/2.7.13
荣 誉 编程语言
Python域名 .com、.cn、.cx、.cc等
目录
1 发展历程
2 格调
3 设计定位
4 执行
5 基本语法 缩进 控制语句 体现式 函数 对象的措施 类型 数学运算
6 CGI 服务器 程序 环境变量
7 特点 优点 缺陷
8 应用
9 工具功效 11 开发环境 •
10 标准库 12 解释器 •
发展历程
编辑
自从20世纪90年代初Python语言诞生至今,它已被逐渐广泛应用于系统管理任务的处理和Web
编程。
Python的创始人为Guido van Rossum。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣
诞节的无趣,决心开发一个新的脚本解释程序,做为ABC 语言的一个继承。之因此选中Python
(大蟒蛇的意思)作为该编程语言的名字,是因为他是一个叫Monty Python的喜剧团体的兴趣者。
ABC是由Guido参加设计的一个教学语言。就Guido本人看来,ABC 这种语言非常优美和强大,
是专门为非专业程序员设计的。不过ABC语言并没有成功,究其原因,Guido 以为是其非开
标识
标识
放导致的。Guido 决心在Python 中防止这一错误。同时,他还想实目前ABC 中闪现过但未曾实
现的东西。
就这么,Python在Guido手中诞生了。能够说,Python是从ABC发展起来,重要受到了Modula-3
(另一个相称优美且强大的语言,为小型团体所设计的)的影响。并且结合了Unix shell和C的习
惯。
Python[4] 已经成为最受欢迎的程序设计语言之一。1月,它被TIOBE编程语言排行榜评为语言。
自从以后,python的使用率呈线性增加[5] 。
因为Python语言的简洁性、易读性以及可扩展性,在国外用Python做科学计算的研究机构日益
增多,某些知名大学已经采取Python来教授程序设计课程。例如卡耐基梅隆大学的编程基础、麻
省理工学院的计算机科学及编程导论就使用Python语言讲授。众多开源的科学计算软件包都提供
了Python的调用接口,例如知名的计算机视觉库OpenCV、三维可视化库VTK、医学图像处理库
ITK。而Python专用的科学计算扩展库就更多了,例如如下3个十分经典的科学计算扩展库:
NumPy、SciPy和matplotlib,它们分别为Python提供了迅速数组处理、数值运算以及绘图功效。
因此Python语言及其众多的扩展库所组成的开发环境十分适合工程技术、科研人员处理试验数据、
制作图表,甚至开发科学计算应用程序。
说起科学计算,首先会被提到的也许是MATLAB。然而除了MATLAB的某些专业性很强的工具箱
还无法替代之外,MATLAB的大部分常用功效都能够在Python世界中找到对应的扩展库。和
MATLAB相比,用Python做科学计算有如下优点:
1.首先,MATLAB是一款商用软件,并且价格不菲。而Python完全免费,众多开源的科学计算库
都提供了Python的调用接口。用户能够在任何计算机上免费安装Python及其绝大多数扩展库。
2.其次,与MATLAB相比,Python是一门更易学、更严谨的程序设计语言。它能让用户编写出更
易读、易维护的代码。
3.最后,MATLAB重要专注于工程和科学计算。然而虽然在计算领域,也常常会遇到文献管理、界
面设计、网络通信等各种需求。而Python有着丰富的扩展库,能够轻易完成各种高级任务,开发
者能够用Python实现完整应用程序所需的各种功效。
格调
编辑
Python在设计上坚持了清楚划一的格调,这使得Python成为一门易读、易维护,并且被大量用户
所欢迎的、用途广泛的语言。
设计者开发时总的指引思想是,对于一个特定的问题,只要有一个最佳的措施来处理就好了。这
在由Tim Peters写的Python格言(称为The Zen of Python)里面表述为:There should be one--
and preferably only one --obvious way to do it. 这恰好和Perl语言(另一个功效类似的高级动态
语言)的中心思想TMTOWTDI(There's More Than One Way To Do It)完全相反。
Python的作者故意的设计限制性很强的语法,使得不好的编程习惯(例如if语句的下一行不向右
缩进)都不能通过编译。其中很重要的一项就是Python的缩进规则。
一个和其他大多数语言(如C)的区分就是,一个模块的界限,完全是由每行的首字符在这一行的
位置来决定的(而C语言是用一对花括号{}来明确的定出模块的边界的,与字符的位置毫无关系)。
这一点曾经引起过争议。因为自从C此类的语言诞生后,语言的语法含义与字符的排列方式分离
开来,曾经被以为是一个程序语言的进步。不过不可否定的是,通过强制程序员们缩进(包括if,
for和函数定义等所有需要使用模块的地方),Python确实使得程序愈加清楚和美观。
设计定位
编辑
Python的设计哲学是“优雅”、“明确”、“简单”。因此,Perl语言中“总是有多个措施来做同一件事”
的理念在Python开发者中一般是难以忍受的。Python开发者的哲学是“用一个措施,最佳是只有
一个措施来做一件事”。在设计Python语言时,假如面临多个选择,Python开发者一般会拒绝花
俏的语法,而选择明确的没有或者极少有歧义的语法。因为这种设计观念的差异,Python源代码
一般被以为比Perl具备愈加好的可读性,并且能够支撑大规模的软件开发。这些准则被称为Python
格言。在Python解释器内运行import this能够取得完整的列表。
Python开发人员尽也许避开不成熟或者不重要的优化。某些针对非重要部位的加快运行速度的补
丁一般不会被合并到Python内。因此诸多人以为Python很慢。不过,依照二八定律,大多数程
序对速度要求不高。在某些对运行速度要求很高的情况,Python设计师倾向于使用JIT技术,或
者用使用C/C++语言改写这部分程序。可用的JIT技术是PyPy。
Python是完全面对对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、
派生、多继承,有益于增强源代码的复用性。Python支持重载运算符和动态类型。相对于Lisp这
种老式的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools,
itertools)提供了Haskell和Standard ML中久经考验的函数式程序设计工具。
虽然Python也许被粗略地分类为“脚本语言”(script language),但实际上某些大规模软件开发
计划例如Zope、Mnet及BitTorrent,谷歌也广泛地使用它。Python的支持者较喜欢称它为一个高
级动态编程语言,原因是“脚本语言”泛指仅作简单程序设计任务的语言,如shellscript、VBScript
等只能处理简单任务的编程语言,并不能与Python相提并论。
Python自身被设计为可扩充的。并非所有的特性和功效都集成到语言核心。Python提供了丰富的
API和工具,以便程序员能够轻松地使用C语言、C++、Cython来编写扩充模块。Python编译器
自身也能够被集成到其他需要脚本语言的程序内。因此,诸多人还把Python作为一个“胶水语言”
(glue language)使用。使用Python将其他语言编写的程序进行集成和封装。在谷歌内部的诸多
项目,例如谷歌 Engine使用C++编写性能要求极高的部分,然后用Python或Java/Go调用对应
的模块。《Python技术手册》的作者马特利(Alex Martelli)说:“这极难讲,不过, 年,Python
已在谷歌 内部使用,谷歌 召募许多 Python 高手,但在这之前就已决定使用Python,他们的目
标是 Python where we can, C++ where we must,在操控硬件的场所使用 C++,在迅速开发时
候使用 Python。”
执行
编辑
Python在执行时,首先会将.py文献中的源代码编译成Python的byte code(字节码),然后再
由Python Virtual Machine(Python虚拟机)来执行这些编译好的byte code。这种机制的基本思
想跟Java,.NET是一致的。然而,Python Virtual Machine与Java或.NET的Virtual Machine不
一样的是,Python的Virtual Machine是一个更高级的Virtual Machine。这里的高级并不是一般意
义上的高级,不是说Python的Virtual Machine比Java或.NET的功效更强大,而是说和Java 或.NET
相比,Python的Virtual Machine距离真实机器的距离更远。或者能够这么说,Python的Virtual
Machine是一个抽象层次更高的Virtual Machine。
基于C的Python编译出的字节码文献,一般是.pyc格式。
除此之外,Python还能够以交互模式运行,例如主流操作系统Unix/Linux、Mac、Windows都能
够直接在命令模式下直接运行Python交互环境。直接下达操作指令即可实现交互操作。
版权声明:本文标题:2024年黑马程序员Python教程Python简介 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1735824862a1692531.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论