龙空技术网

Python应用领域有哪些?

晒晒追剧 303

前言:

此刻看官们对“python语言应用领域”大概比较珍视,看官们都想要了解一些“python语言应用领域”的相关知识。那么小编同时在网摘上汇集了一些有关“python语言应用领域””的相关内容,希望我们能喜欢,你们快快来了解一下吧!

Python 不仅仅是一个设计优秀的程序语言, 它能够完成现实中的各种任务,包括开发者们日复一日所做的事情。作为编制其他组件、实现独立程序的工具,它通常应用于各种领域。实际上,作为一种通用语 言,Python 的应用角色几乎是无限的:你可以在任何场合应用Python, 从网站和游戏开发到机器人和航天飞机控制。

尽管如此,Python 的应用领域分为如下几类。下文将介绍一些Python 如今最常见的应用领域,以及每个应用领域内所用的一些工具。我们不会对各个工具进行深入探讨,如果你对这些话题感兴趣,请从Python 网站或其他一些资源中获取更多的信息。

系统编程

Python 对操作系统服务的内置接口,使其成为编写可移植的维护操作系统的管理工具和部件(有时也被称为Shell 工具)的理想工具。Python 程序可以搜索文件和目录树,可以运行其他程序,用进程或线程进行并行处理等等。

Python 的 标准库绑定了POSIX 以及其他常规操作系统(OS )工具:环境变量、文件、套接字、管道、进程、多线程、正则表达式模式匹配、命令行参数、标准流接 口、Shell 命令启动器、文件名扩展等。此外,很多Python 的系统工具设计时都考虑了其可移植性。例如,复制目录树的脚本无需做任何修改就可以 在几乎所有的Python 平台上运行。推荐一个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 。

诸如PythonCard 和 Dabo 等一些高级工具包是构建在wxPython 和Tkinter 的基础API 之上的。通过适当的库,你可以使用其他的GUI 工具包,例 如,Qt 、GTK 、MFC 和Swing 等。对于运行于浏览器中的应用或在一些简单界面的需求驱动下,Jython(Java 版本的 Python ,我们将会在第2章中进行介绍)和Python 服务器端CGI 脚本提供了其他一些用户界面的选择。

Internet 脚本

Python 提 供了标准Internet 模块,使Python 能够广泛地在多种网络任务中发挥作用,无论是在服务器端还是在客户端都是如此。脚本可以通过套接字进行 通信;从发给服务器端的CGI 脚本的表单中解析信息;通过URL 获取网页;从获取的网页中解析HTML 和XML 文件;通过XML-RPC 、 SOAP 和Telnet 通信等。Python 的库使这一切变得相当简单。

不仅如此,从网络上还可以获得很多使用Python 进行 Internet 编程的第三方工具。例如,HTMLGen 可以从Python 类的描述中生成HTML 文件,mod_python 包可以使在 Apache 服务器上运行的Python 程序更具效率并支持Python Server Page 这样的服务器端模板,而且支持客户端运行的服务器 端Applet 。此外,Python 涌现了许多Web 开发工具包,例如,Django 、TurboGears 、Pylons 、Zope 和 WebWare ,使Python 能够快速构建功能完善和高质量的网站。

组件集成

在介绍 Python 作为控制语言时,曾涉及它的组件集成的角色。Python 可以通过C/C++ 系统进行扩展,并能够嵌套C/C++ 系统的特性,使其能 够作为一种灵活的粘合语言,脚本化处理其他系统和组件的行为。例如,将一个C库集成到Python 中,能够利用Python 进行测试并调用库中的其他 组件;将Python 嵌入到产品中,在不需要重新编译整个产品或分发源代码的情况下,能够进行产品的单独定制。

为了在脚本中使用,在 Python 连接编译好组件时,例如,SWIG 和SIP 这样的代码生成工具可以让这部分工作自动完成。更大一些的框架,例如,Python 的微软 Windows 所支持的COM 、基于Java 实现的Jython 、基于.NET 实现的IronPython 和各种CORBA 工具包,提供了 多种不同的脚本组件。例如,在Windows 中,Python 脚本可利用框架对微软Word 和Excel 文件进行脚本处理。

数据库编程

对 于传统的数据库需求,Python 提供了对所有主流关系数据库系统的接口,例如,Sybase 、Oracle 、Informix 、ODBC 、 MySQL 、PostgreSQL 、SQLite 。Python 定义了一种通过Python 脚本存取SQL 数据库系统的可移植的数据库 API ,这个API 对于各种底层应用的数据库系统都是统一的。例如,因为厂商的接口实现为可移植的API ,所以一个写给自由软件MySQL 系统的 脚本在很大程度上不需改变就可以工作在其他系统上(例如,Oracle )-- 你仅需要将底层的厂商接口替换掉就可以实现。

Python 标准 的pickle 模块提供了一个简单的对象持久化系统:它能够让程序轻松地将整个Python 对象保存和恢复至文件和文件类的对象中。在网络上,同样可 以找到名叫ZODB 的第三方系统,它为Python 脚本提供了完整的面向对象数据库系统,系统SQLObject 可以将关系数据库映射至 Python 的类模块。并且,从Python 2.5 版本开始,SQLite 已经成为Python 自带标准库的一部分了。

快速原型

对 于Python 程序来说,使用Python 或C编写的组件看起来都是一样的。正因为如此,我们可以在一开始利用Python 做系统原型,之后再将组 件移植到C或C++ 这样的编译语言上。和其他的原型工具不同,当原型确定后,Python 不需要重写。系统中不需要像C++ 这样执行效率的部分可以 保持不变,从而使维护和使用变得轻松起来。

数值计算和科学计算编程

我们之前提到过的NumPy 数值 编程扩展包括很多高级工具,例如,矩阵对象、标准数学库的接口等。通过将Python 与出于速度考虑而使用编译语言编写的数值计算的常规代码进行集 成,NumPy 将Python 变成一个缜密严谨并简单易用的数值计算工具,这个工具通常可以替代已有的代码,而这些代码都是用FORTRAN 或 C++ 等编译语言编写的。其他一些数值计算工具为Python 提供了动画、3D 可视化、并行处理等功能的支持。

游戏、图像、人工智能、XML 、机器人等

Python 的 应用领域很多,远比本书提到的多得多。例如,可以利用pygame 系统使用Python 对图形和游戏进行编程;用PIL 和其他的一些工具进行图像处 理;用PyRo 工具包进行机器人控制编程;用xml 库、xmlrpclib 模块和其他一些第三方扩展进行XML 解析;使用神经网络仿真器和专业的 系统shell 进行AI 编程;使用NLTK 包进行自然语言分析:甚至可以使用PySol 程序下棋娱乐。一 般来说,这些特定领域当中有许多在很大程度上都是Python 组件集成角色的再次例证。采用C这样的编译语言编写库组件,增加Python 至其前端, 这样的方式使Python 在不同领域广泛地发挥其自身价值。对于一种支持集成的通用型语言,Python 的应用极其广泛。

企业与政务应用

目前,Python已经成功的实现企业级应用,在全球,已经有很多公司采用Python进行企业级软件的开发和应用,比如:ERP和CRM这样的应用。同时,通过Python技术,成功的实现了许多政务应用。

用Python写的较大的系统有:

Zope:一个应用程序服务器,具有内容管理、团队开发、XML、面向对象、SOAP接口等一系先进特性,且开放源码。

Gadfly:一个用Python写的面向对象关系型数据库,具有小巧、快速、可移植性好,具有大部分SQL语言特性,且开放源码。

还有一些比较有名的公司也在用Python进行原型的开发,如Microsoft、IBM等,还有:

红帽(Red Hat )曾用Python和Tk一起成功开发配置和管理操作系统的可视界面。整个系统可以全面控制Linux操作系统,并根据用户选择对配置文件作自动更新。

Infoseek在其公用搜索引擎使用了Python。该公司还用Python对其软件进行定制,使最终用户能对该网站内容进行方便下载。

标签: #python语言应用领域