更改 Python 语言

有时,人们会想出如何更改或改进 Python 作为编程语言的方法。本文档旨在准确解释哪些更改有合理的考虑机会,以及提出语言更改的流程。

符合条件的

首先,必须理解,对 Python 编程语言的更改很难进行。当语言发生变化时,每个现有的 Python 程序员和所有未来的 Python 程序员最终都会了解您想要提出的更改。书籍需要更新,代码将被更改,并且需要学习一种新的做事方式。对 Python 编程语言

由于语言变更的严重性,任何变更都必须对大部分 Python 用户有益。如果变更只对一小部分 Python 开发人员有益,那么该变更将不会进行。要了解你的想法是否适用于大部分 Python 社区,一种好方法是在 Ideas Discourse 类别 中询问。你还可以浏览 Python 的 stdlib,并找到可以从你建议的变更中受益的代码示例(这有助于向他人传达你的变更的实用性)。有关进一步的指导,请参阅 建议新功能和语言变更

你建议的变更还需要是Pythonic。虽然只有指导委员会才能真正将某物归类为 Pythonic,但你可以阅读 Python 之禅 以获取指导。

建议新功能和语言变更

Ideas Discourse 类别 专门用于讨论新功能和语言变更。如果你的想法没有得到普遍认可,请不要失望:正如 PEP 索引已撤回和被拒绝的 PEP 的长列表 所证明的,并且正如一种相当成熟的编程语言所应有的,将重大变更引入 Python 并不是一项简单的任务。

如果这个想法是合理的,有人会建议在 问题跟踪器 上将其发布为功能请求,或者,对于较大的变更,按照 PEP 流程 将其编写为 PEP。

有时核心开发人员的意见会有分歧,或者只是集体不相信。当没有明显的胜利者时,现状赢得僵局

有关被接受的语言变更的一些示例,请参阅 证明 Python 语言变更

PEP 流程

一旦你确定你有一个语言变更提案,该提案将吸引一般的 Python 社区,你就可以开始 PEP 流程来正式提出变更。有关 PEP 和 PEP 流程的信息,请参阅 PEP 1,有关示例,请参阅 PEP 索引

如果 PEP 被接受,那么你建议的语言变更将在下一个 Python 版本中引入。否则,你的 PEP 将被记录为被拒绝,并附有解释,以告知将来可能提出类似语言变更的其他人。