lee-pai-long
6/10/2018 - 10:26 PM

must read PEPs

[Python3] List of must read PEPs

Fist a reminder of what a PEP is and how PEPs are organised

PEP stands for Python Enhancement Proposal. A PEP is a design document providing information to the Python community, or describing a new feature for Python or its processes or environment. The PEP should provide a concise technical specification of the feature and a rationale for the feature.

PEP 1

There are three main types of PEP:

  • A Standards Track PEP describes a new feature or implementation for Python.
  • An Informational PEP describes a Python design issue.
  • A Process PEP describes a process surrounding Python.

There is also meta-PEPs, which are Process PEPs mostly about PEPs. i.e PEP 0 and PEP 1.

For Python 3, numbers in the 3000s were used for Py3k-specific proposals. But now that all new features go into Python 3 only, the process is back to using numbers in the 100s again. Remember that numbers below 100 are meta-PEPs.

PEP 1

So now what PEPs should a Python dev know or at least read?

  • PEP 20: The Zen of Python is a set of general guidelines to follow
  • PEP 8: Python style guide
  • PEP 257: Python documentation guidelines
  • PEP 508: Dependency specification
  • PEP 328 and PEP 221: Imports