购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.1 Python概述

Python翻译成中文是巨蟒的意思,它是一种编程语言,于1991年正式发布。它的创造者Guido van Rossum给Python的定位是简单、明确、优雅,所以对初学者而言,Python简单易懂,便于学习,而且将来深入学习后,还可以编写一些非常复杂的程序。

1.1.1 Python简介

Guido van Rossum参与过ABC语言的开发,ABC语言非常优美和强大,却因非开放性未得到广泛使用。而Python不仅避免了这一点,还结合了Modula-3、Unix shell和C而逐渐壮大起来。

1.Python解释器

Python是一门跨平台的脚本语言,它有自己的语法规则,也有相应的Python解释器,常用的解释器有以下3个。

CPython:最常用的Python版本,C语言实现的Python。

Jython:Java语言实现的Python,直接调用Java的各种函数库。

IronPython:. NET和ECMA CLI实现的Python,直接调用.NET平台的各种函数库,可以将Python程序编译成.NET程序。

2.Python文件格式

Python有两种常见的文件格式:.py和.pyc。

.py:Python项目的源码。

.pyc:字节文件,Python中间编译结果,当程序中有import****这样的语句时,才会产生.pyc。

注意:.pyc文件可随时删除,当Python再次运行时,会重新生成.pyc文件,.pyc文件运行方式与.py文件一样。

3.Python现状

到目前为止,Python已经诞生近30年,也经历了30多个版本的发展。2008年年底Python3.0版本发布,目前已更新至3.8版本,中间还发布了Python2.5、Python2.7等版本,本书使用Python3.7版本进行讲解。

这些版本之间存在着一定的联系,也有差异。比如Python 2.X和Python 3.X就有明显的差异。Python 3.X由于不想带入过多的累赘,所以没有考虑向下兼容的问题,因此Python 3.0以下版本的程序都无法在Python 3.0以上的版本中运行。为了解决这个问题,实现3.0以下版本的程序向Python 3.X的迁移,中间又开发了几个版本作为过渡版本,其中Python 2.7是比较经典的版本。如果你是初学者,建议直接安装Python 3.0以上的版本。

1.1.2 Python特点

当我们被C语言指针搞得晕头转向时,Python的出现无疑让我们在编程时可以保持头脑清醒,因为我们重点关注的不再是语法特性,而是程序所要实现的功能任务。

Python语言具有很多富有创造性的特点。

1.简单易读

Python没有开始、结束、分号等标记,代码简洁,循环语句简化,程序结构清晰,易于阅读和理解。其保留字也很少,常见的保留字如表1-1所示。

表1-1 Python 3.X保留字说明

可以用以下方法查看保留字。

2.跨平台可移植性强

Python程序稍作修改甚至不修改便可在Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acorn RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE、PocketPC等平台上运行。

3.动态性

Python与PHP、Ruby、ECMAScript(JavaScript)一样都属于动态语言。所谓动态语言就是在执行时能够改变其结构的语言,是高级程序设计语言的一个类别。Python灵活性高,不需要声明变量,直接赋值即可创建新变量。

举个例子,定义一个student(学生)类,初始属性有name(姓名)和age(年龄)。

学生属性除了name(姓名)和age(年龄)外,应该还有sex(性别),如果是动态语言,直接给S对象的sex属性赋值“male”就可以得到想要的结果,可如果是其他语言,这一步可能就会报错。

运行代码,输出S.sex的值,结果为male,这就是动态给实例绑定属性。

所以动态语言可以在运行时引进新的函数、对象,甚至代码,还可以删除已有的函数等其他结构上的变化。

4.健壮的异常处理机制

Python的异常处理机制能捕获程序异常情况,并且堆栈跟踪对象能找到出错地方和出错原因,帮助我们调试程序。

5.面向对象特性

Python执行面向对象编程的方式的特性既强大又简洁,简化了面向对象的实现,消除了保护类型、抽象类、接口等面向对象元素,使面向对象的概念更容易理解。Python也支持面向过程,程序围绕着过程或者函数(可重复使用的程序片段)构建。

6.可扩展性

Python由C语言开发,可以使用C或C++完成新模块、新类的添加,而Python程序可以完全调用它们,同时还可以嵌入到C或C++的程序中。

7.强大的库文件

Python有非常完善的基础代码库,覆盖了网络、数据库、GUI、文件、文本等大量内容,被形象地称作“内置电池(batteries included)”。Python标准库很大,它能够帮助用户完成许多的工作,如FTP(文件传输协议)、数据库、正则表达式、单元测试、线程、网页浏览器、CGI(公共网关接口)、电子邮件、XML(可扩展标记语言)、GUI(图形用户界面)等。除了这些基础代码库之外,Python还有大量高质量的第三方库,是别人编写贡献出来的,用户可以通过Python包索引找到它们。

图1-1 PYPL编程语言指数榜

1.1.3 Python发展前景

人工智能是现在很火的专业,虽然Java有众多追随者,但是Python的语法特点使程序设计更轻松,编写的代码比Java可读性更强,其发展速度迅猛。2017年年底山东省的小学信息技术六年级教材加入Python内容,小学生开始接触Python语言。从2018年起,浙江省信息技术教材不再使用晦涩难懂的VB语言,而是改用更简单易懂的Python语言。也就是说,Python将纳入高考内容。从2018年起,Python列入全国计算机等级考试范围。而2018年PYPL发布的编程语言指数榜显示,Python已超越Java占据榜首,如图1-1所示。 EFHPF12T5qoPEKGccd9F1mQNgApgDLhKm6zcjEmyk+eq0g8Cgvezv+LG8o1COI24

点击中间区域
呼出菜单
上一章
目录
下一章
×