Zen of Python
The Zen of Python is a collection of 19 "guiding principles" for writing computer programs that influence the design of the Python programming language.[1] Software engineer Tim Peters wrote this set of principles and posted it on the Python mailing list in 1999.[2] Peters's list left open a 20th principle "for Guido to fill in", referring to Guido van Rossum, the original author of the Python language. The vacancy for a 20th principle has not been filled.
Peters's Zen of Python was included as entry number 20 in the language's official Python Enhancement Proposals and was released into the public domain.[3] It is also included as an Easter egg in the Python interpreter, where it can be displayed by entering import this
.[1][3]
In May 2020, Barry Warsaw (developer of GNU Mailman) wrote the lyrics to music.[4][5]
Principles
The principles are listed as follows:
- 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.[lower-alpha 1]
- 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.[lower-alpha 2]
- 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!
See also
- Convention over configuration
- There's more than one way to do it
Notes
- ↑ The formatting of the dashes in this line and the final is purposely inconsistent, in reference to the varying formatting conventions.[6]
- ↑ In the interpreter easter egg, this is written as "Although never is often better than *right* now." This follows a longstanding convention of plain-text communication — in which common formatting features are often impossible — where emphasis is represented with asterisks.
References
- ↑ 1.0 1.1 "Code Style". 2011–2019. http://docs.python-guide.org/en/latest/writing/style/#zen-of-python.
- ↑ "The Python Way". Python Software Foundation. June 4, 1999. https://mail.python.org/pipermail/python-list/1999-June/001951.html.
- ↑ 3.0 3.1 Peters, Tim (August 19, 2004). "PEP 20—The Zen of Python". Python Software Foundation. https://www.python.org/dev/peps/pep-0020/.
- ↑ Warsaw, Barry (10 May 2020). "The Zen of Python". https://wefearchange.org/2020/05/zenofpython.rst.html.
- ↑ Warsaw, Barry (23 May 2020). The Zen of Python. YouTube. The Zbwedicon. Archived from the original on 2021-12-11.
- ↑ "Issue 3364: An ortographical typo in Zen of Python text - Python tracker". https://bugs.python.org/issue3364.
External links
Original source: https://en.wikipedia.org/wiki/Zen of Python.
Read more |