我可以用 Python 做什么?

举报
Yuchuan 发表于 2021/11/25 15:03:25 2021/11/25
【摘要】 您已经完成了一门课程,或者最终读完了一本教您Python 编程基础知识的书。你已经了解了变量,列表,元组,字典,for以及while循环,条件语句,面向对象的概念,等等。下一个是什么?现在你可以用 Python 做什么? Python 是一种通用的编程语言,在各个不同领域都有许多用例。如果您已经掌握了 Python 的基础知识并渴望用该语言构建一些东西,那么是时候弄清楚下一步应该做什么了。

目录

您已经完成了一门课程,或者最终读完了一教您Python 编程基础知识的。你已经了解了变量列表,元组字典for以及while循环,条件语句面向对象的概念,等等。下一个是什么?现在你可以用 Python 做什么?

Python 是一种通用的编程语言,在各个不同领域都有许多用例。如果您已经掌握了 Python 的基础知识并渴望用该语言构建一些东西,那么是时候弄清楚下一步应该做什么了。

在本文中,您将了解如何将 Python 用于:

  • 从事一般软件开发
  • 深入研究数据科学和数学
  • 加快和自动化您的工作流程
  • 构建嵌入式系统机器人

您还将找到有关可用于立即开始使用 Python 构建事物的实用项目、资源和教程的想法。

现实世界中的 Python

Python 是一种高级和通用的编程语言。正如这个定义所暗示的那样,您可以将 Python 用于多种用途,从Web 开发数据科学机器学习机器人技术。Python 的实际用例是无限的。

您可能想知道人们使用 Python成功构建了什么。如果您快速浏览一下使用该语言的公司,就会发现世界一流的公司,例如 Google、YouTube、Facebook、Instagram、Spotify、Netflix 等。

Google从一开始就使用 Python ,并且它已成为这家科技巨头的主要服务器端语言之一。Python 的创造者Guido van Rossum在那里工作了几年,负责监督该语言的开发。

Instagram 喜欢 Python,因为它很简单。该服务运行“世界上最大的 Django Web 框架部署而闻名,该框架完全用 Python 编写”。

Spotify 使用该语言进行数据分析和后端服务。据其团队称,Python 的易用性带来了闪电般的开发流程。Spotify 执行大量分析以向其用户提供建议,因此它需要一个运行良好的高效工具。Python 来救援!

您还会发现 Python 对科学和太空探索至关重要,在机器人和硬件控制方面有许多令人兴奋的用例。

在本文中,您将了解如何在广泛的领域中使用您的 Python 技能。

开发酷软件

Python 的生态系统提供了一组丰富的框架、工具和库,允许您编写几乎任何类型的应用程序。您可以使用 Python 为Web以及桌面移动平台构建应用程序。您甚至可以使用 Python 来创建视频游戏。

Web开发

使用 Python 开发 Web 应用程序是最受欢迎的技能之一,那里有很多机会供您使用。在这个领域,您会发现几个有用的 Python 框架、库和工具,用于开发很酷的 Web 应用程序、API 等。以下是一些最流行的 Python Web 框架:

Framework Description
Django Django 是一个高级框架,它鼓励通过简洁实用的设计进行快速的 Web 应用程序开发。它使您可以专注于编写应用程序,而无需重新发明轮子。
FastAPI FastAPI 是用于构建 Web API 的快速且高性能的 Web 框架。它建立在现代 Python 类型提示功能之上,并支持异步编程。
Flask Flask 是一个用于创建WSGI Web 应用程序的轻量级框架。它使您可以快速入门,并在需要时扩展到复杂的应用程序。
Tornado Tornado 是一个 Web 框架和异步网络库。它使用非阻塞网络I/O,因此您可以编写可扩展到数万个打开连接的应用程序。

要开始 Web 开发,请查看:

如果您想要一些实用的项目想法来立即应用您的 Web 开发技能,那么您可以使用 Django构建一个投资组合 Web 应用程序。有这么多工作和职业机会,现在拥有个人投资组合是个好主意,所以继续尝试吧。您无需了解任何有关 Django 的知识即可开始学习本分步教程。如果您渴望在 Python 中进行 Web 开发,那么它是完美的。

命令行开发

Python 闪耀的另一个领域是命令行界面 (CLI)应用程序开发。CLI 应用程序无处不在,通过为命令行创建小型和大型工具,您可以在日常工作中自动执行重复和无聊的任务。

在 Python 中,您拥有一组令人印象深刻的 CLI 库和框架,它们可以让您的生活更加愉快并帮助您快速构建命令行工具:

Library Description
argparse argprse是一个标准库模块,允许您编写用户友好的命令行界面。您可以在命令行中定义要采用的参数并很好地解析它们。当您的用户提供无效输入时,它会自动生成帮助和使用消息并发出错误。
Click Click 是一个 Python 包,用于根据需要使用最少的代码创建漂亮的命令行界面。它是高度可配置的,并带有开箱即用的合理默认值。它的目标包括使编写命令行工具的过程变得快速而有趣。
Typer Typer 是一个用于构建用户喜欢使用和开发人员喜欢创建的 CLI 应用程序的库。它为所有shell提供自动帮助消息和自动完成。它最大限度地减少了代码重复并促进了调试。

要开始 CLI 开发,请查看:

此外,如果您想开始构建 CLI 应用程序项目,那么您可以从为命令行创建目录树生成器工具开始。在这个循序渐进的项目中,您将构建一个命令行工具来生成 ASCII 图表,这些图表显示文件系统中目录或文件夹的内容。

使用用户友好且直观的命令行界面创建应用程序对于任何 Python 开发人员来说都是一项宝贵的技能。

GUI Development

桌面环境创建传统的图形用户界面 (GUI)应用程序也是 Python 中一个有吸引力的选择。如果您对构建此类应用程序感兴趣,那么 Python 为您提供了广泛的 GUI 库、框架和工具包供您选择:

Library Description
Kivy Kivy 是一个用于快速开发具有创新用户界面的应用程序的库,例如多点触控应用程序。它可以在 Linux、Windows、macOS、Android、iOS 和Raspberry Pi 上运行
PyQt PyQt 是Qt应用程序框架的一组 Python 绑定。它包括用于构建 GUI 应用程序的类。它还提供用于网络、线程SQL 数据库等的类。它支持 Windows、Linux 和 macOS 平台。
PySimpleGUI PySimpleGUI 是一个库,旨在将 tkinter、Qt、wxPython 和Remi GUI 框架转换为更简单的界面。它使用 Python 核心数据类型来定义窗口并简化事件处理。
Qt for Python (PySide6) Qt for Python 是一个PySide6为 Qt 框架提供官方 Python 绑定集 ( ) 的项目。
tkinter tkinter 是Tk GUI 工具包的标准 Python 接口。它允许您构建 GUI 应用程序,而无需第三方依赖。它可用于大多数 Unix 平台以及 Windows 系统。
wxPython wxPython 是wxWidgets C++库的 Python 绑定。它允许您使用单一代码库为 Windows、macOS 和 Linux 创建应用程序。它为应用程序提供了原生的外观和感觉,因为它使用平台的原生API

开始构建 GUI 应用程序的一种快速方法是使用tkinter. 这个模块来自 Python 标准库。练习使用tkinter并观察您的愿景在屏幕上具体化。一旦你弄湿了,你就可以扩展并开始使用其他 Python GUI 工具包。

要开始 GUI 编程,请查看:

构建后端服务是开发的重要组成部分。但是,您还需要一个前端。创建用户可以有效交互的应用程序至关重要。

如果您想开始创建真实世界的 GUI 应用程序,那么您可以使用 PyQt 构建一个计算器。完成这个计算器项目将帮助您掌握这个全功能 GUI 框架的基础知识,因此您可以立即开始为您的桌面构建漂亮的东西。

您还可以找到一些其他实用项目来帮助您完成 GUI 编程之旅。查看以下资源:

这些项目将指导您完成使用 PyQt 和 Python 构建 GUI 应用程序的过程。他们还将帮助您整合各种技能,以创建功能齐全的实际应用程序。

游戏开发

创建电脑游戏是学习如何使用 Python 以及任何其他语言进行编程的好方法。要开发游戏,您需要使用变量循环条件语句函数面向对象编程等等。游戏开发是整合多种技能的绝佳选择。

电脑游戏在编程中发挥了重要作用。许多人进入编程是因为他们喜欢游戏并想重新创建自己喜欢的游戏或构建自己的游戏。开发电脑游戏可能是一次有趣且有益的冒险,您可以在其中体验刚刚创建的游戏的美妙体验。

您将在 Python 生态系统中找到多种用于快速创建游戏的工具、库和框架。这是其中的一个小样本:

Library Description
Arcade Arcade 是一个用于创建 2D 视频游戏的 Python 库。它非常适合学习编程的人,因为他们无需学习复杂的游戏框架即可开始创建自己的游戏。
PyGame PyGame 是一组专为编写视频游戏而设计的 Python 模块。它在SDL库之上添加了功能。它允许您创建功能齐全的游戏和多媒体程序。该库具有高度可移植性,可在多个平台和操作系统上运行。
pyglet pyglet 是一个强大的 Python 库,用于在 Windows、macOS 和 Linux 上创建游戏和其他视觉丰富的应用程序。它支持窗口化、用户界面事件处理、OpenGL图形、加载图像以及播放视频和音乐。

要开始游戏编程,请查看:

您可以使用 Python 创建街机游戏、冒险游戏和益智游戏,您可以在几个小时内部署它们。您还可以使用新获得的编程技能编写经典游戏,例如刽子手、井字棋、石头剪刀布等。

如果您想深入构建您的第一个游戏,那么您可以从使用 Python 和 PyGame 构建 Asteroids 游戏开始。如果您想更进一步构建您的第一个平台游戏,请查看使用 Arcade 在 Python 中构建平台游戏

深入研究数据科学和数学

数据科学是一个涉及清理、准备和分析数据以从中提取知识的领域。数据科学结合了统计学数学编程和解决问题的技能,从数据中提取有用的信息。

Python 在数据科学和数学领域发挥着重要作用。该语言因其可读性、生产力、灵活性和可移植性而受到科学家的欢迎。围绕科学的 Python 生态系统得到了极大的发展。您几乎可以在数学和科学的每个主要领域找到成熟的 Python 解决方案。

Python 包括用于机器学习 (ML)人工智能 (AI)科学计算数据分析数据可视化的工具。该语言还提供了用于收集、挖掘和操作数据的高效工具。

机器学习

对于对人工智能感兴趣的人来说,机器学习可能是第一步。机器学习研究通过经验学习的算法。这些算法基于训练数据样本构建模型以进行预测和决策。

机器学习可能是一个令人生畏的入门领域,因为这个领域快速且不断变化。以下是使用 Python 进行机器学习的一些最流行工具的摘要:

Library Description
Keras Keras 是一个工业强度的深度学习框架,具有专为人类设计的 API。它允许您运行新的实验并快速尝试更多的想法。它遵循减少认知负荷的最佳实践。
NLTK NLTK 是一个用于构建 Python 程序以处理人类语言数据的平台。它提供了用于分类、标记化、词干提取、标记、解析和语义推理的库。
PyTorch PyTorch 是一个开源机器学习框架,可加速从研究原型到生产部署的路径。
scikit-learn scikit-learn 是一个开源机器学习库,支持有监督无监督学习。它是一种高效的预测性数据分析工具,可供所有人使用,并可在各种环境中重复使用。
TensorFlow TensorFlow 是一个端到端的机器学习开源平台。它拥有一个全面、灵活的工具、库和社区资源生态系统,可帮助您构建和部署 ML 驱动的应用程序。

要开始机器学习,请查看:

科学计算

Python 发挥重要作用的另一个领域是科学计算。科学家利用超级计算机计算机集群,甚至台式机和膝上型计算机提供的先进计算能力来理解和解决复杂问题。

以下是一些可用于 Python 科学计算的库和工具:

Library Description
NumPy NumPy 是使用 Python 进行科学计算的基础包。它提供了全面的数学函数、随机数生成器、线性代数例程、傅立叶变换等。它提供了一种高级语法,使其易于访问和高效。
SciPy SciPy 是一个基于 Python 的数学、科学和工程开源软件集合。
SimPy SimPy 是一个基于 Python 的基于过程的离散事件仿真框架。它可以帮助您模拟真实世界的系统,例如机场、客户服务、高速公路等。

要开始使用科学计算,请查看:

本节中的库和工具是 Python 数据科学空间中的基本部分。其中一些是用于机器学习、数据分析等的高级库的核心组件。

数据分析和可视化

数据分析是收集、检查、清理转换建模数据以发现有用信息、做出预测、得出结论、支持决策过程等的过程。数据分析与数据可视化密切相关,数据可视化处理数据的图形表示。

在 Python 中,您还将找到用于数据分析和数据可视化的成熟和完善的库。这里是其中的一些:

Library Description
Bokeh Bokeh 是一个用于 Web 浏览器的交互式数据可视化库。它提供了构建优雅和多功能图形的工具。它可以帮助您快速制作交互式绘图、仪表板和数据应用程序。
Dash Dash 是一个 Python 框架,用于快速构建 Web 分析应用程序。它非常适合构建具有在浏览器中呈现的自定义用户界面的数据可视化应用程序。
Matplotlib Matplotlib 是一个用于在 Python 中创建静态、动画和交互式数据可视化的库。
pandas pandas 是一个强大而灵活的开源工具,用于分析和操作数据。它提供快速、灵活和富有表现力的数据结构来处理关系或标记数据。
Seaborn Seaborn 是一个基于 Matplotlib 的 Python 数据可视化库。它提供了一个高级界面,用于绘制有吸引力且信息丰富的统计图形,使您能够探索和理解您的数据。它与 Pandas 数据结构紧密集成。

要开始进行数据分析和可视化,请查看:

如果您想通过构建一个实际项目来提升您的数据分析技能,那么您可以使用 Python 和 pandas 创建一个成绩簿。这个循序渐进的项目将指导您完成创建一个 Python 脚本的过程,该脚本加载成绩数据并计算一组学生的字母成绩。该项目涉及从逗号分隔值 (CSV) 文件加载数据、探索数据以及使用 Pandas 计算和绘制成绩。

网页抓取

进行数据科学的最重要的信息来源之一是Web。使用自动化工具(爬虫)从 Web 收集和解析原始数据的过程称为Web 抓取

Python 有一组很棒的工具和库,用于从 Web 抓取数据。这里是其中的一些:

Library 描述
Beautiful Soup Beautiful Soup 是一个 Python 库,用于将数据从 HTML 和 XML 文件中提取到解析树中。该库提供了从解析树中导航、搜索、修改和提取信息的方法和 Pythonic 习惯用法。
requests requests是一个优雅而强大的 Python HTTP库。它提供了为人类设计的直观简洁的 API。
Scrapy Scrapy 是一个快速、高级的网页抓取和网页抓取框架。它允许您抓取网站并从其页面中提取结构化数据。
urllib.request urllib.request是一个标准库模块,它定义了帮助您打开 URL 的函数和类。它还允许您使用基本和摘要式身份验证、重定向、cookie 等。

要从网络上抓取数据,请查看:

一旦您了解了网页抓取的基础知识,您就可以深入到一个实际项目中,并使用 Python 和 Beautiful Soup构建您自己的网页抓取工具。完成这个实际项目后,您将能够将相同的过程和工具应用于任何其他静态网站。这些技能允许您提取相关信息并在您的应用程序中使用它。来试试看吧!

注意:在使用 Python 技能进行网页抓取之前,您应该检查目标网站的使用政策,以确保使用自动化工具对其进行抓取不会违反其使用条款。

您可以立即构建的第二个项目是比特币价格通知服务。自从 2021 年 1 月以略高于 40,000 美元的价格达到顶峰以来,这种加密货币一直在数以百万计的人的脑海中。它的价格继续波动,但许多人会认为这是一项值得的投资。

如果您想从虚拟淘金热中获利,并且只需要知道何时采取行动,那么您就需要掌握比特币的价格。该项目的基础是创建IFTTT(If This Then That)小程序。您将学习如何使用requests发送 HTTP 请求以及如何使用webhook将您的应用程序连接到外部服务。

对于对加密感兴趣的 Python初学者,此比特币价格通知服务是完美的入门项目。然后,您可以扩展将在本教程中构建的服务,以监控其他货币。

多亏了互联网——以及越来越多的物联网——你现在可以访问多年前无法获得的大量数据。

分析是任何处理数据的领域的重要组成部分。人们在谈论什么?您可以从他们的行为中看到哪些模式?Twitter 是获得其中一些问题答案的好地方。如果您对数据分析感兴趣,那么Twitter 情绪分析项目是使用您的 Python 技能回答有关您周围世界的问题的好方法。

在这个项目中,您将学习如何使用Docker环境挖掘 Twitter 数据和分析用户情绪。您将学习如何向 Twitter 注册应用程序,您需要这样做才能访问其流 API。您将看到如何使用Tweepy来过滤您想要提取的推文,如何使用TextBlob来计算这些推文的情绪,如何使用Elasticsearch来分析它们的内容,以及如何使用 Kibana来可视化结果。

加速和自动化您的工作流程

计算机非常擅长执行重复性和无聊的任务。他们可以长时间做同样的事情而不会犯错误。这是一项宝贵的功能,可以帮助您使日常工作更加愉快和高效。

使用 Python,您可以自动化工作流程中的许多任务。您可以自动化和管理您的DevOps操作、构建有效的Python 开发环境、处理开发周期中的打包和部署过程、测试您的软件、管理您的数据库系统等等。

开发运营

DevOps 包括软件开发和一般IT 运营。DevOps 允许您处理应用程序和软件产品的整个生命周期。包括开发、测试、打包部署等相关操作。

Python 是人们用于 DevOps 的主要技术之一。它的灵活性和可访问性使 Python 非常适合这项工作,使开发团队能够改进他们的工作流程并提高效率和生产力。

在 Python 生态系统中,您会发现一些流行的 DevOps 工具是用 Python 编写的。您还会发现您可以使用 Python 来控制大多数这些工具。这里有几个:

Library 描述
Ansible Ansible 是用于软件供应、配置管理和应用程序部署的工具。它使基础设施即代码成为可能
Docker Compose Docker Compose 是一个用于定义和运行多容器 Docker应用程序的工具。您可以使用YAML文件配置应用程序的服务。然后,使用单个命令,您可以从配置文件创建和启动所有服务。它适用于生产、登台、开发、测试等。

要开始使用 DevOps,请查看:

通过这些资源,您将培养各种技能并学习使用任何使用 Python 的 DevOps 工程师都应该知道的工具和技术。

开发环境

为您和您的团队成员构建一个高效的环境是软件开发的基本组成部分。为此,Python 有一组很棒的工具,允许您在每个项目的虚拟环境中隔离您的包、库和 Python 版本。

以下是一些最受欢迎的工具:

Tool 描述
conda conda是一个开源的包和环境管理系统。它允许您快速安装、运行和更新包及其依赖项。它可以帮助您查找和安装软件包。
pip pipPython包管理工具。它允许您从PyPI和其他索引安装包。
Pipenv Pipenv 是一个工具,旨在将所有打包世界中最好的东西带到 Python 世界。它允许您为您的项目创建和管理虚拟环境。它提供了一种通过统一接口使用pipvirtualenv组合的方式。
pipx pipx 是一种工具,可帮助您在隔离环境中安装和运行用 Python 编写的最终用户应用程序。它为每个应用程序及其关联的包创建一个隔离的环境。它使应用程序在您的命令行或 shell 中可用。
pyenv pyenv 是一个用于安装和管理多个 Python 版本的工具。它可以让您在它们之间快速切换。它还允许您定义每个项目的 Python 版本。

要构建有效的开发环境,请查看:

学习如何为你的开发冒险构建一个有效的 Python 环境将把你的生产力提升到一个新的水平,所以花时间磨练这项技能很重要。

软件打包部署

软件开发周期的另一个关键部分是打包、分发和部署您的产品给您的最终用户或客户。在 Python 中,部署应用程序和库的一种快速且流行的方法是将它们发布到 PyPI。

以下是您可以用于此目的的一些工具:

Tool 描述
Flit Flit 是一种工具,它提供了一种将 Python 包和模块放在 PyPI 上的快速方法。它可以帮助您设置有关您的包的信息,因此您可以轻松地将其发布到 PyPI。
Poetry Poetry 是一个用于创建、构建、安装和打包 Python 项目的工具。它还允许您将项目发布到 PyPI。它跟踪并解决您项目的依赖项。它使用您当前的虚拟环境或创建新的虚拟环境来将您的包与系统范围的 Python 安装隔离开来。
PyInstaller PyInstaller 是一种工具,可将 Python 应用程序冻结为可在 Windows、GNU/Linux、macOS 等下运行的独立可执行文件。
setuptools setuptools 是 Python distutils的增强集合,允许您构建和分发 Python发行版,尤其是那些依赖于其他包的发行版。
Twine Twine 是一个用于在 PyPI 上发布 Python 包的实用程序。它允许您上传项目的源代码和二进制分发版。

要开始,请查看:

使用这些资源,您可以开始将 Python 应用程序、库和包打包并部署到您的最终用户、客户和学院。此外,Python Packaging Authority提供了许多有用的信息和教程,以帮助您使用现代工具分发 Python 包。

数据库系统

作为开发人员,您在职业生涯中构建的大多数应用程序都会以某种方式与数据交互。这种交互通常通过数据库管理系统 (DBMS)发生,该系统允许您定义、创建、维护和控制对您的一个或多个数据库的访问。

要使用 Python 连接和操作您的数据库,您有多种选择,包括标准库包和第三方包和库。您还可以选择在 Python 中使用SQLNoSQL数据库。

对象关系映射工具 (ORM)是另一种重要的工具,您可能会用来在 Python 中处理数据库。这些工具允许您使用面向对象的编程来创建和操作您的数据库。

以下是一些可用于连接和操作数据库的 Python 库:

Library 数据库 描述
MongoEngine MongoDB MongoEngine 是一个文档对象映射器,用于使用 Python 中的面向对象编程来处理 MongoDB。
MySQL Connector/Python MySQL MySQL Connector 是一个独立的 Python 驱动程序,用于与 MySQL 服务器通信。
Psycopg PostgreSQL Psycopg 是 Python 编程语言的 PostgreSQL 数据库适配器。
PyMongo MongoDB PyMongo 是一个 Python 发行版,包含用于处理 MongoDB 数据库的工具。它为此类数据库系统提供了本机 Python 驱动程序。
SQLAlchemy 查询语句 SQLAlchemy 是用于 SQL 数据库的 Python SQL 工具包和对象关系映射器。
sqlite3 SQLite sqlite3是一个轻量级的基于磁盘的数据库,不需要单独的服务器进程。它允许您使用 SQL 的非标准变体访问数据库。它是免费提供的,并且包含在 Python 标准库中。

要开始使用数据库,请查看:

创建和使用数据库是在 Python 应用程序中管理数据的强大方法。数据库为您的程序增加了重要的功能和多功能性,并允许您为您的用户和客户提供令人兴奋的功能。管理数据库是开发人员教育中的一项基本技能。

软件测试

当您开始使用 Python 或编程时,您可能首先创建可以手动运行和测试的小程序和脚本,以确保它们按预期工作。但是,当您的程序增长并变得越来越复杂时,手动测试它们几乎是不可能的。这是自动化测试出现的时候。

不幸的是,开发人员会犯错,没有代码是完美的。因此,您需要一个测试过程来帮助您识别错误并避免将它们投入生产。测试还可以推动您的代码设计并帮助您检查非功能特性,例如性能、安全性、可用性、法规遵从性等。因此,测试是软件开发的重要组成部分。

在测试方面,Python 有一些最好的工具。您可以使用这些工具编写一致的测试并自动运行它们。以下是这些工具的一小部分示例:

Tool 描述
doctest doctest 是一个标准模块,用于在您的文档字符串中搜索看起来像交互式 Python 会话的文本片段,并执行它们以验证它们是否正常工作。
pytest pytest 是一个强大而成熟的测试框架,允许您编写和自动化测试。它可以从小型单元测试扩展到应用程序和库的复杂功能测试。
tox tox 是一个通用的virtualenv管理和测试命令行工具。它允许您检查您的包是否在不同的 Python 版本和解释器中正确安装。它可以在每个配置的环境中运行您的测试。
unittest unittest是 Python 标准库中提供的单元测试框架。它支持测试自动化、测试的设置和拆卸、将测试聚合到集合中等等。

要开始测试,请查看:

作为开发人员,您需要生成可正常工作的可靠代码。这意味着每次更改代码或添加新功能时都需要测试代码。在这些情况下,自动化测试是可行的方法。

开发嵌入式系统和机器人

为 Web 或桌面编写自己的应用程序很酷,但编写控制硬件系统和机器人工作方式的代码会更酷!像领域物联网家庭自动化自动驾驶汽车机器人已经变得越来越流行,在科学和技术的进步。

Python 已逐渐进入传感器、电动机、电路、微控制器和机器人的世界。今天,您可以找到几个朝着这个方向发展的 Python 项目。这里是其中的一些:

Library 描述
BBC micro:bit BBC micro:bit 是一款袖珍电脑,向您介绍软件和硬件如何协同工作。它可以用 Python 编程。
CircuitPython CircuitPython 是一种编程语言,旨在简化在低成本微控制器板上进行编码的实验和学习。
MicroPython MicroPython 是 Python 的一种精简高效的实现。它包含 Python 标准库的一小部分。它经过优化,可在微控制器和受限环境中运行。
PythonRobotics PythonRobotics 是各种具有可视化功能的机器人算法的汇编。它专注于自主导航。它的目标是让您了解它提供的每个机器人算法背后的基本思想。
Raspberry Pi Raspberry Pi 是一种通用的、基于 Linux 的计算机。它有一个完整的操作系统,带有 GUI 界面,能够同时运行许多不同的程序。Python 内置于 Raspberry Pi 中。
rospy rospy 是ROS(机器人操作系统)的客户端库。它的 API 使 Python 程序员能够快速与 ROS 交互以创建复杂可靠的机器人行为。

要开始使用嵌入式 Python,请查看:

如果你想开始用 Python 创建一个硬件相关的项目,那么看看如何在 Raspberry Pi 上用 Python构建物理项目。在此项目中,您将学习如何设置 Raspberry Pi、在其上运行 Python 代码、从其传感器读取输入、向其电子组件发送信号等等。

你可能不应该用 Python 做什么

Python 是一种高度通用的语言,你可以用它做很多事情。但是,您不能做所有事情。Python 根本不适合某些事情。

作为一种解释性语言,Python 在与低级设备(如设备驱动程序)交互时遇到了麻烦。如果您想用 Python 编写操作系统,就会遇到问题。对于低级应用程序,最好坚持使用CC++

然而,即使这样也可能不会长久。作为 Python 灵活性的证明,有些人致力于将 Python 的可用性扩展到低级交互的项目。MicroPython 和 CircuitPython 只是其中一些为 Python 设计低级功能的项目。

我还能用 Python 做什么?

本教程中的想法列表并不详尽。您可以使用 Python 处理无数其他领域。如果您正在寻找Python 非常适合的实用项目,请查看13 个面向中级 Python 开发人员的项目创意以寻找灵感。

您也可以自己进行研究以找到引起您兴趣的项目。如果您不确定从哪里开始,请在 Twitter 上关注Real Python。您会在那里找到来自社区的酷炫有趣的 Python 项目。也许你会找到一些你迫不及待想要贡献的东西!

结论

对使用 Python 可以做什么有一个基本的了解是您不断提高 Python 技能的关键。您可以在从应用程序开发到机器人技术的各种不同领域使用 Python!

在本文中,您看到可以将 Python 用于:

  • 通用软件开发
  • 数据科学数学
  • 工作流加速和自动化
  • 嵌入式系统机器人

您还看到了几个实际项目的想法,您可以构建这些项目以将您的 Python 技能提升到一个新的水平。

下一步

所以你有它!从 Python 初学者到精通 Pythonista 的大量主题和实践项目列表。

无论您选择从哪里开始,您都将为提高编程技能开辟无数途径。选择一些东西并开始吧!你有一个不在这里的实际项目的想法吗?在下方发表评论!您可以为其他程序员推荐完美的项目。

如果您遇到困难并需要朝着正确的方向推动,请查看11 个 Python 编程初学者技巧,以帮助您重回正轨。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。