Python之简介

来源:互联网 发布:静态数据采集仪原理 编辑:程序博客网 时间:2024/05/22 14:11

Python是解释型、面向对象、动态数据类型的程序设计语言。是一门跨平台的脚本语言
Python解释器就是实现了Python语法的解释程序。
Python是使用缩进来区分代码块的编程语言,因此必须严格控制其格式

Python发展历史

Python遵循GPL开源协议,由Guido Van Rossum于1989年发明,并于1991年公开第一个发行版。Python本身是由诸多的其他语言发展而来,其中包括ABC、Modula-3、C、C++、Unix Shell等其他脚本语言等。

Python特点

1、解释型语言:不需要编译环节,类似于PHP和Perl语言2、交互式语言:可以在Python的终端或者控制端直接执行程序。3、面向对象:支持面向对象的风格或者代码封装到对象的编程技术。4、初学者语言:支持广泛的应用程序开发,从简单的数字处理到WWW浏览器再到游戏。5、易学习:Python有较少的关键字,结构简单,有明确定义的语法。6、易维护。7、易阅读。8、有广泛的标准库:拥有跨平台的丰富的标准库,在各平台都有很好的兼容性。9、可移植:鉴于其开放源代码的特性,可以被移植到很多平台。10、可扩展:可以使用其他语言将不想开放的部分进行编写,然后封装好后,在Python程序中调用。11、数据库:支持所有 主要的商业数据库接口。12、GUI编程:Python支持GUI,可以创建并移植到很多系统调用。13、可嵌入:可以将Python嵌入到C/C++程序,使程序的用户获得脚本化的能力。

Python运行方式

1、交互式解释器:在命令行界面中执行Python代码2、命令行脚本:在脚本中引入解释器,然后执行可执行权限的脚本。3、IDE开发环境:图形用户界面执行代码。

Python执行原理

Python在执行时,首先会将.py文件中的源代码编译成Python的字节码,然后再由Python虚拟机来执行这些编译好的字节码。这种机制与JAVA、.NET的机制很像,但是Python Virtual Machine相比于JAVA虚拟机和NET虚拟机来说,是更加高级的虚拟机,是一种更加抽象的虚拟机。基于C的Python编译出的字节码的文件,通常是.pyc格式。

Python的应用

1、系统编程:提供API,能够方便进行系统维护和管理。2、图形处理:有PIL、Tkinter等图形库的支持,能方便进行图像处理。3、数字处理:NumPy扩展提供了大量标准数学库的接口。4、文本处理:Python的Re模块支持正则表达式,还提供了SGML、XML分析模块,很多程序员利用Python进行XML程序的开发。5、数据库编程:通过遵循Python DB-API(数据库应用程序编程接口)规范的模块与现在许多的商业型数据库进行通信,Python自带了Gadfly模块,提供了一个完整的SQL环境。6、网络编程:提供丰富的模块支持sockets编程,能快速方便开发分布式应用程序。7、WEB编程:支持最新的XML技术。8、多媒体应用:Python的PyOpenGL模块封装了OpenGl应用程序编程接口,能进行二维和三维图像处理,PYGame模块可以编写游戏软件。9、Pymo引擎:全称Python memories off,运行于塞班、安卓上的AVG游戏引擎。基于Python2.0平台开发,并且适用于创建秋之回忆风格的AVG游戏,因此称呼PYMO。

Python标准库

1、Python拥有一个强大的标准库。Python语言的核心只包含数字、字符串、列表、字典、文件等常见类型和函数,而由Python标准库提供了系统管理、网络通信、文本处理、数据库接口、图形系统、XML处理等额外的功能。Python标准库命名接口清晰、文档良好,很容易学习和使用。2、Python标准库的主要功能有:文本处理,包含文本格式化、正则表达式匹配、文本差异计算与合并、Unicode支              持,二进制数据处理等功能文件处理,包含文件操作、创建临时文件、文件压缩与归档、操作配置文件等功  能操作系统功能,包含线程与进程支持、IO复用、日期与时间处理、调用系统函  数、写日记(logging)等功能网络通信,包含网络套接字,SSL加密通信、异步网络通信等功能网络协议,支持HTTP,FTP,SMTP,POP,IMAP,NNTP,XMLRPC等多种网                络协议,并提供了编写网络服务器的框架W3C格式支持,包含HTML,SGML,XML的处理。其它功能,包括国际化支持、数学运算、HASH、Tkinter等

Python工具功能

1、Tkinter是Python默认的图形界面接口,是一个和TK接口的Python模块。Tkinter库提供了对Tk API的接口,它属于Tcl/Tk的GUI工具组。2、PyGTK用于Python GUI程序开发的GTK+库,GTK用来实现GIMP和Gnome的库。3、PyQt:用于Python的Qt开发库。4、wxPython是GUI编程框架,和MFC的框架很类似。5、PIL库能进行图形格式的转换、打印和显示,可以进行一些图形效果的处理,是Python强大图形处理能力的有力的工具。6、Psyco是Python代码加速度器,可以是Python代码的执行速度提高到编译语言一样的水平。7、PyMedia用于多媒体操纵的Python模块,可以在windows和Linux下使用。8、Pmw,Python Megawidgets,是Python超级GUI组件集,一个在Python中利用Tkinter模块构建的高级GUI组件,每个Pmw包含一个或多个Tkinter组件,以实现更加有用和复杂的功能。9、PyXML是用于Python解析和处理XML文档的工具包,包中的4DOM完全相容与WC DOM规范。它包含以下内容:xmlproc: 一个符合规范的XML解析器。Expat: 一个快速的,非验证的XML解析器。还有其他和他同级别的还有 PyHtml PySGML。10、PyGame用于多媒体和游戏软件的开发的模块。11、PyOpenGL:可以使用该模块在程序中集成2D或3D图形。12、MySQLdb:用于连接MySQL数据库,还用于zope的ZMySQLDA模块,通过它可在zope中连接Mysql数据库。13、sqlite314、Python-ldap:使用该模块可以方便在Python中访问ldap目录,它基于OpenLADP2.x。15、smtplib库用于发送电子邮件。16、ftplib定义了一些FTP类和方法,用于急性客户端的ftp编程。17、PyOpenCL可以通过该模块使用GPU实现并行计算。18、NumPy、NumArray、SAGE:NumArray是Python的一个扩展库,主要用于处理任意维数的固定类型数组,简单说就是一个矩阵库。它的底层代码使用C来编写,所以速度的优势很 明显。SAGE是基于NumPy和其他几个工具所整合成的数学软件包,目标是取代Magma, Maple, Mathematica和Matlab 这类工具。
0 0