什么是 Python?

了解 Python,这种流行且无处不在的编程语言几乎可以用于任何目的。

Using Python to find corrupted images

Jason van Gumster。CC BY-SA 4.0

Python 是一种流行的通用编程语言,可用于各种应用程序。它包括高级数据结构、动态类型、动态绑定以及许多其他功能,使其在复杂应用程序开发以及连接组件的脚本或“胶水代码”方面都非常有用。它也可以扩展为对几乎所有操作系统进行系统调用,并运行用 C 或 C++ 编写的代码。由于其普遍性和几乎可以在每个系统架构上运行的能力,Python 是一种在各种不同应用程序中都能找到的通用语言。

Python 是一种解释型、交互式、面向对象的编程语言。它包含模块、异常、动态类型、非常高级的动态数据类型和类。—Python 软件基金会 FAQ

该编程语言包含 Python 包索引 (PyPI) 中提供的数千个第三方模块。PyPI 为不同的专业知识提供了流行的标准,例如用于Web 开发的 Django 和用于数据科学的 NumPy、Pandas 和 Mathplotlib

关于 Python

Python 最初由 Guido van Rossum 在 1980 年代后期开发,通过 Python 增强提案 (PEP) 管理公开讨论,作为一种开源编程语言而发展。2018 年,van Rossum 辞去了该语言的终身仁慈独裁者 (BDFL) 职务,并且,正如 PEP 13 中正式概述的那样,一个指导委员会成立以担任该语言的领导层。

Python 软件基金会 (PSF) 是一家 501(c)(3) 非营利性公司,拥有 Python 编程语言背后的知识产权。这包括 Python 2.1 及更高版本、PyPI、CPython 参考实现以及维护该语言的基础设施。PSF 还为软件工艺提供资助,并每年举办多次 PyCon 会议。

Python 目前处于其第三个主要版本,并且定期更新。

Python 是开源的吗?

是的,所有现代版本的 Python 都根据 GPL 兼容许可证获得版权,该许可证已通过 开源倡议认证。Python 徽标已注册商标,但允许自定义(请参阅完整许可证了解详细信息)。

您可以在此处下载 Python 源代码。

为什么要使用 Python?

根据您的角度和背景,Python 作为一种编程语言是一个不错的选择,原因有几个。

面向程序员的 Python

编程新手可以从 Python 的高抽象级别中受益。它具有高度交互性,并以其围绕特定语法(包括空格)的“强烈意见”而闻名。Python 与其他高级语言一样,具有一个垃圾回收过程来管理内存或删除未使用的资源。用户可以通过在命令行中键入 python 或使用像 JupyterLab 这样的项目获得来自解释器的即时反馈,如果他们想要基于浏览器的开发体验。许多用户也欣赏 Python 具有编译器强制执行的严格语法,这使得编写程序有一种“正确方法”变得容易。这种开发风格通过Python 之禅得到加强

The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!

无论经验水平如何,来自许多不同背景的程序员都以重要方式为该语言做出贡献。Python 拥有成熟的免费和专有工具生态系统,包括集成开发环境 (IDE)、代码检查工具和框架。通过 PyPI 和 Conda 共享的模块具有涵盖几乎所有主题的深度和广度。一些最受欢迎的模块包括

  • Web 框架,例如 Django、Pyramid、Flask 和 Bottle。
  • 标准库中对 JSON、HTML、XML、FTP、IMAP 和套接字的互联网协议支持。
  • 使用 SciPy、Pandas、IPython、NumPy 等进行数据科学和机器学习。

面向系统管理员的 Python

如果您是系统管理员,您可能熟悉并习惯使用 shell 脚本进行系统管理。Bash 和其他 shell 是强大的函数式语言,但 Python 是面向对象的,并且有数千个库可以在您自己的工作中使用。事实上,许多开源和专有 IT 基础设施组件都提供 Python 库,以便您可以自动化它们,使其成为系统管理员、站点可靠性工程师 (SRE) 和 IT 运维人员更易于维护的语言。

Python 社区

也许最重要的是,Python 拥有庞大的用户社区。Python 的流行既是其社区的原因,也是其结果。根据 IEEE Spectrum 排名,它是 2018 年排名第一的编程语言,并且根据 StackOverflow 2019 年开发者调查,它是排名第一的“最想要的”和排名第二的“最受欢迎的”语言。Pythonistas,社区成员对自己的称呼,在全球各地数千个 PyCon 会议中聚会。

这意味着无论您尝试解决什么问题,很可能已经有优秀的人员在致力于解决方案。他们也很可能已经共享了代码、文档、教程和示例,以帮助您使用 Python 编程解决方案。有大量的 IDE 和其他开发工具可供选择,并且有数千个开源软件包可用于扩展 Python 以执行您能想到的任何事情。

你可以用 Python 做的 5 件令人惊讶的事情

Python 是如此通用,以至于它可以用于驱动复杂的应用程序堆栈、简化基础设施测试以及完成介于两者之间的一切。以下是一些示例,可帮助您入门

谁在使用 Python?

许多组织都是 Python 用户。一些最直言不讳和最著名的 Python 使用公司包括

此外,许多 IT 基础设施技术都是用 Python 编写的。它是大规模云计算项目 OpenStack 的主要语言,该项目正在为全球各地数据中心的私有云和公共云提供支持。基础设施自动化软件 Ansible 也是用 Python 编写的。

它也用于编写桌面软件,例如 CalibreOpenShot。Blender 是用其他语言编写的众多应用程序之一,它允许用户使用 Python 进行脚本编写。它也是机器学习以及科学、统计、数学和其他类型的专业计算的流行语言。甚至 Raspberry Pi 的名字也源于创始人计划使用该平台来教授 Python。

所以,简而言之,Python 用于做什么?几乎所有事情!

我在哪里可以学习 Python?

有很多关于 Python 的知识可以学习,并且有很多资源可供使用。考虑平衡您从资源中的输入和您练习编写该语言的输出。

初学者建议

首先了解如何安装 Python 并选择一个文本编辑器或 IDE 来编写代码。

中级建议

选择一个能激发您的项目,并开始掌握将帮助您完成项目的库。

高级建议

继续通过调试、共享代码和测试来磨练您的专业知识。

与我们分享

无论您拥有什么级别的 Python 专业知识,都可以通过在 Opensource.com 上为我们写作来分享您的知识。这将有助于使您和我们的读者成为更好的程序员。

并务必关注我们的 Python 标签,并留意 Opensource.com 上更多关于 Python 的文章。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 获得许可。
© . All rights reserved.