- Expert Python Programming(Second Edition)
- Micha? Jaworski Tarek Ziadé
- 326字
- 2021-07-16 10:58:04
Getting up to date with changes – PEP documents
The Python community has a well-established way of dealing with changes. While speculative Python language ideas are mostly discussed on specific mailing lists (<python-ideas@python.org>
), nothing major ever gets changed without the existence of a new document called a PEP. A PEP is a Python Enhancement Proposal. It is a paper written that proposes a change on Python, and is a starting point for the community to discuss it. The whole purpose, format, and workflow around these documents is also standardized in the form of a Python Enhancement Proposal—precisely, PEP 1 document (http://www.python.org/dev/peps/pep-0001).
PEP documents are very important for Python and depending on the topic, they serve different purposes:
- Informing: They summarize the information needed by core Python developers and notify about Python release schedules
- Standardizing: They provide code style, documentation, or other guidelines
- Designing: They describe the proposed features
A list of all the proposed PEPs is available as in a document—PEP 0 (https://www.python.org/dev/peps/). Since they are easily accessible in one place and the actual URL is also very easy to guess, they are usually referred to by the number in the book.
Those who are wondering what the direction is in which the Python language is heading but do not have time to track a discussion on Python mailing lists, the PEP 0 document can be a great source of information. It shows which documents have already been accepted but are not yet implemented and also which are still under consideration.
PEPs also serve additional purposes. Very often, people ask questions like:
- Why does feature A work that way?
- Why does Python not have feature B?
In most such cases, the extensive answer is available in specific PEP documents where such a feature has already been mentioned. There are a lot of PEP documents describing Python language features that were proposed but not accepted. These documents are left as a historical reference.
- Machine Learning with R Cookbook(Second Edition)
- Java編程指南:基礎知識、類庫應用及案例設計
- Access 2010數據庫基礎與應用項目式教程(第3版)
- Learn WebAssembly
- Spring實戰(第5版)
- Learning Apache Kafka(Second Edition)
- Nginx實戰:基于Lua語言的配置、開發與架構詳解
- RabbitMQ Essentials
- Windows Phone 7.5:Building Location-aware Applications
- Learning YARN
- Python爬蟲、數據分析與可視化:工具詳解與案例實戰
- Kivy Cookbook
- Troubleshooting Citrix XenApp?
- Python期貨量化交易實戰
- Java 9:Building Robust Modular Applications