首页 > 编程笔记

Python语言简介

Python 是一种容易学习、功能强大的高级程序设计语言,它既支持面向过程的程序设计,同时也支持面向对象的编程,而且具有高效的数据结构。

Python 语言具有优雅的语法、动态类型以及解释性质,能够使学习者从语法细节中摆脱出来,专注于探索解决问题的方法研究,分析程序本身的逻辑和算法,它已成为众多领域应用程序开发的理想语言。

Python 语言的语法简洁,开发效率很高,具有强大的功能,已经成为当今广泛应用的程序设计语言之一。对于开始学习程序设计的新手而言,选择 Python 语言作为第一门编程语言无疑是一个理想的选择。

Python语言的发展

Python 语言是由荷兰国家数学与计算机科学研究所的研究员 Guido van Rossum 于 20 世纪 80 年代末、90 年代初设计出来的。这种语言之所以被命名为 Python,据说是因为 Guido van Rossum 非常喜欢英国电视喜剧片《Monty Python′s Flying Circus》的缘故。

Python 语言的第一个版本在 1991 年初公开发布。因为该语言采用开源方式发行,而且功能十分强大,所以其应用越来越多,很快就形成了一个规模庞大的语言社区。

Python 语言是由诸多其他语言发展而来的,其中包括 ABC、Modula-3、C、C++、Algol-68、SmallTalk、UNIX shell 以及其他脚本语言等。Python 属于自由软件,其语言解释器和源代码均遵循 GNU 通用公共许可证协议。

Python 2.0 于 2000 年 10 月发布,其中增加了许多新的特性。在 Python 2.0 向 3.0 迁移的过程中,Python 2.6 和 2.7 作为过渡版本,基本上仍然使用 Python 2.x 的语法规则,但也考虑到向 Python 3.0 迁移的问题。

Python 3.0 于 2008 年 12 月发布,该版本与之前的 Python 版本不完全兼容,使用 Python 2.x 编写的程序无法在 Python 3.0 上运行。当作者写这篇文章时,Python 的最新版本为 3.6.4

时至今日,Python 语言由一个核心开发团队在维护,Guido van Rossum 在该语言的发展过程中仍然起着至关重要的作用。

Python 已经成为最受欢迎的程序设计语言之一。2004 年以后,Python 的使用率呈线性增长。

2017 年 7 月 20 日,IEEE Spectrum 杂志发布了第四届顶级编程语言交互排行榜,Python 语言在 2017 年编程语言排行榜上高居首位。

Python语言的特点

Python 是结合了解释性、交互性和面向对象的高层次的脚本语言。Python 语言具有以下主要特点。

1) 语法简洁

Python 使用的关键字比较少,其语法结构中废弃了花括号、begin 和 end 等标记,可以使用空格或制表符来分割代码块,语句末尾也不需要使用分号,语法规则简洁而优雅,更加容易阅读、学习和维护。

2) 交互模式

Python 有两种编程模式,即交互模式和脚本模式。

交互模式是在 Python 提示符下可以直接输入和执行代码并可立即获得执行结果,这种交互模式便于学习和测试代码片段。

3) 跨平台性

Python 程序是通过其解释器解释运行的,在 Windows、Linux 和 Macintosh 等操作系统平台上都有 Python 解释器,从而可以保证 Python 程序在不同平台上具有一致性和兼容性。

4) 开放源代码

Python 是一种开源的编程语言,目前有许多开放社区为用户提供及时的技术支持,还提供了各种功能丰富的开源函数模块,这也为 Python 语言的发展创造了十分有利的条件。

5) 可扩展性

Python 支持 C 语言扩展,如果在 Python 应用开发过程中需要一段快速运行的关键代码,或者是想要编写一些保密的算法,则可以使用 C 或 C++ 语言完成这部分程序,然后在 Python 程序中调用这部分程序即可。

另一方面,也可以将 Python 代码嵌入到 C 或 C++ 程序中,从而使程序具有脚本语言的灵活特性。

6) 解释型语言

Python 程序不需要编译成二进制代码便可直接运行,在这个过程中首先由 Python 解释程序将 Python 源代码转换成 Python 字节码,然后由 Python 虚拟机逐条执行字节码指令。

如果需要,也可以使用 Python Distutils 的外部扩展(py2exe)将 Python 脚本转换为 Windows 下的可执行文件(以 exe 为文件扩展名),这样无需安装 Python 即可运行 Python 脚本。

7) 面向对象

Python 语言支持面向对象的编程或将代码封装在对象中的编程技术,在程序设计中可以抽象出类和对象的属性和行为,将它们组织在一定范围内,使用封装、继承、多态等方法来简化解决问题的过程。

Python 语言取消了保护类型、抽象类和接口等元素,从而在一定程度上简化了面向对象编程的过程。

8) 丰富的数据结构

Python 语言提供了丰富的内置数据结构,包括列表、元组、集合、字典等,这些数据结构极大地方便了程序设计,提高了程序开发效率。

Python语言的应用

Python 作为一种功能强大的通用编程语言而广受好评,目前在国际上非常流行,正在得到越来越多的应用。Python 语言的应用领域主要包括以下几个方面。

1) Windows系统编程

Python 在 Windows 系统中得到了很好的应用,通过添加 pywin2 模块提供的 Windows API 函数接口,可以通过 Python 程序中实现 Windows 系统的底层功能,包括访问注册表、调用 Active X 控件以及各种 COM(Component Object Model,组件对象模型)组件等,还可以完成许多其他的日常维护和管理工作,从而减少了用户维护的工作量。

2) 数据库访问

Python 语言提供了所有主要关系数据库的接口,包括 SQLite、MySQL、Access、SQL Server 以及 Oracle 等。要访问某种数据库,调用相应的 Python 模块即可。

例如,通过内置的 sqlite3 模块访问 SQLite 数据库,通过 pymysql 模块访问 MySQL 数据库,通过 pyodbc 或 win32.client 模块访问 Access 数据库,通过 pymssql 模块访问 SQL Server 数据库等。

3) 科学计算

Python 语言广泛运用于科学计算领域,并发挥了独特的作用,有多种模块可以帮助用户在计算巨型数组、矢量分析、神经网络等方面高效率地完成工作。

NumPy 数值编程扩展包括很多高级工具,例如矩阵对象、标准数学库的接口等。通过将 Python 与常规代码(出于速度考虑而使用编译语言编写的用于数值计算的常规代码)进行集成,NumPy 将 Python 变成一个缜密、严谨且简单、易用的数值计算工具,这个工具通常可以替代已有代码,而这些代码都是用 FORTRAN 或 C++ 等编译语言编写的。

此外,还有一些数值计算工具为 Python 提供了动画、3D 可视化、并行处理等功能的支持。

4) 图形用户界面(GUI)编程

Python 语言支持创建图形用户界面,并且可以移植到许多系统中来调用。Python 具有的简洁及快速的开发周期十分适合开发 GUI 程序。

Python 内置了 Tkinter 的标准面向对象接口 Tk GUI API,使 Python 程序可以生成可移植的可视化的 GUI。对 Python/Tkinter GUI 不做任何改变就可以在微软 Windows、X Windows(UNIX 和 Linux)以及 Mac OS(Classic 和 OS X 都支持)等平台上运行。免费的扩展包 PMW 为 Tkinter 工具包增加了一些高级部件。

此外,基于 C++ 平台的工具包 wxPython GUI API 可以使用 Python 构建可移植的 GUI,在 wxPython 和 Tkinter 的基础 API(应用程序编程接口)上还构建了一些高级工具包,诸如 PythonCard 和 Dabo 等。通过适当的第三方库也可以使用其他 GUI 工具包,例如 Qt、GTK、MFC 以及 Swing 等。

对于运行于浏览器中的应用或一些简单界面的需求,Jython(Java 版本的 Python)和 Python 服务器端 CGI 脚本则提供了另一种用户界面的选择。

5) 多媒体应用

利用 PIL、Piddle、ReportLab 等模块可以处理图像、声音、视频、动画等。动态图表的生成、统计分析图表都可以通过 Python 来完成。

另外,利用 PyOpenGl 模块用户可以迅速编写出三维场景。

6) 网络编程

Python 提供了众多的解决方案和模块,可以使用户方便地完成网络编程工作并定制出自己的服务器软件,无论是 C/S 还是 B/S 模式 Python 都提供了很好的解决方案。

推荐阅读

副业交流群 关注微信公众号,加入副业交流群,学习变现经验,交流各种打法。