Python 简明教程

Python - Application Areas

Python 是一种通用编程语言。它适用于各种软件应用程序的开发。在过去几年中,Python 已成为开发人员在以下应用程序领域的首选语言:

让我们详细了解这些应用程序领域:

Data Science

Python 最近在流行榜上的惊人崛起很大程度上归功于其数据科学库。Python 已成为数据科学家的必备技能。如今,实时 Web 应用程序、移动应用程序和其他设备会生成大量数据。Python 的数据科学库帮助公司从这些数据中生成业务见解。

NumPyPandasMatplotlib 这样的库被广泛用于将数学算法应用到数据并生成 visualizations 。商业和社区 Python 发行版(如 Anaconda 和 ActiveState)捆绑了数据科学所需的所有必需库。

Machine Learning

Scikit-learnTensorFlow 这样的 Python 库有助于根据过去数据构建模型,用于预测客户满意度、股票预期价值等趋势。 Machine learning 应用包括(但不限于)医疗诊断、统计套利、篮子分析、销售预测等。

Web Development

Python 的 Web 框架促进了快速的 Web 应用程序开发。 DjangoPyramidFlask 在 Web 开发人员社区中非常流行。等等使得开发和部署从简单到复杂的各种 Web 应用程序变得非常容易。

最新版本的 Python 提供异步编程支持。现代 Web 框架利用此功能开发快速且高性能的 Web 应用程序和 API。

Computer Vision and Image processing

OpenCV 是一个广泛流行的库,用于捕获和处理图像。图像处理算法从图像中提取信息,重建图像和视频数据。计算机视觉使用图像处理进行人脸检测和模式识别。OpenCV 是一个 C++ 库。其 Python 端口因其快速开发特性而被广泛使用。

计算机视觉的一些应用领域包括 robotics 、工业监控、自动化和 biometrics 等。

Embedded Systems and IoT

Micropython ( https://micropython.org/ )是一个轻量级版本,特别适用于像 Arduino 这样的微控制器。许多自动化产品、机器人 IoT 和信息亭应用程序都是围绕 Arduino 构建的,并使用 Micropython 进行编程。 Raspberry Pi 也是一种非常流行的低成本单板计算机,用于此类应用程序。

Job Scheduling and Automation

Python 在自动化 CRON(按时执行命令)作业中找到了它的第一个应用。某些任务(如定期数据备份)可以用 Python 脚本编写,计划由操作系统计划程序自动调用。

许多软件产品(如 Maya)嵌入了 Python API,用于编写自动化脚本(类似于 Excel 微控件)。

Desktop GUI Applications

Python 是构建符合人体工程学、美观且用户友好的桌面 GUI 应用程序的理想选择。尽管几个图形库使用 C/C++ 构建,但它们已被移植到 Python。流行的 Qt 图形工具包在 Python 中作为一个 PyQt 包提供。类似地,WxWidgets 已被移植到 Python 中,成为 WxPython 。Python 的内置 GUI 包 TKinter 是一个 Python 接口,可用于 Tk 图形工具包。

这有一份精选的 Python GUI 库列表:

  1. Tkinter − Tkinter 是 Python 界面,可使用 Tk GUI 工具包,该工具包与 Python 的标准库一起提供。

  2. wxPython − 这是 wxWidgets GUI 工具包的 Python 界面。BitTorrent 客户端应用程序就是使用 wxPython 功能构建的。

  3. PyQt – Qt 是最流行的 GUI 工具包之一。它已移植为 PyQt5 包的形式用于 Python。使用 PyQt 的著名桌面 GUI 应用程序包括 QGIS、Spyder IDE、Calibre Ebook Manager 等。

  4. PyGTK − PyGTK 是用 Python 和 C 为 GTK + GUI 库编写的一组包装器。完整的 PyGTK 教程可在此处获得。

  5. PySimpleGUI − PySimpleGui 是一个用于 Python 的开源跨平台 GUI 库。它的目标是为基于 Python 的 Tkinter、PySide 和 WxPython 工具包创建桌面 GUI 提供一个统一的 API。

  6. Jython − Jython 是 Java 的 Python 移植,它使 Python 脚本能够无缝访问本地计算机上的 Java GUI 库。

Console-based Applications

Python 通常用于构建 CLI(命令行界面)应用程序。此类脚本可用于运行计划的 CRON 作业,例如执行数据库备份等。有很多 Python 库可以解析命令行参数。argparse 库与 Python 的标准库捆绑在一起。您可以使用 Click(Flask 框架的一部分)和 Typer(包含在 FastAPI 框架中)为各个框架构建的基于 Web 的应用程序构建控制台界面。Textual 是一个快速开发框架,用于构建同时在终端和浏览器中运行的应用程序。

CAD Applications

CAD 工程师可以利用 Python 的多功能性来自动执行重复性任务,例如绘制形状和生成报告。

Autodesk Fusion 360 是一个流行的 CAD 软件,它有一个 Python API,允许用户自动执行任务并创建自定义工具。同样,SolidWorks 有一个内置的 Python shell,允许用户在该软件内运行 Python 脚本。

CATIA 是另一款非常流行的 CAD 软件。除了 VBScript 外,还可以使用某些第三方 Python 库来控制 CATIA。

Game Development

一些流行的游戏应用程序是使用 Python 构建的。示例包括 BattleField2、模拟人生 4、坦克世界、加勒比海盗等。这些应用程序都使用以下 Python 库之一构建。

Pygame 是用于构建引人入胜的电脑游戏的最流行的 Python 库之一。Pygame 是一个开源 Python 库,用于制作多媒体应用程序,例如构建在出色的 SDL 库之上的游戏。它是一个跨平台库,这意味着您可以构建可以在任何操作系统平台上运行的游戏。

另一个库 Kivy 也被广泛用于构建桌面游戏和基于移动设备的游戏。Kivy 具有多点触控界面。它是一个开源跨平台 Python 库,用于快速开发游戏应用程序。Kivy 可在 Linux、Windows、OS X、Android、iOS 和 Raspberry Pi 上运行。

PyKyra 库基于 SDL(软件和文档本地化)和 Kyra 引擎。它是最快的一些游戏开发框架。PyKyra 支持 MPEG、MP3、Ogg Vorbis、Wav 等多媒体格式。