Python之禅 - The Zen of Python
Cite from “The Python Way”(Tim Peters, 1999)
- 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之父。
- 做比不做好,
- 但不假思索就动手还不如不做。
- 如果实现很难解释,那这就是个坏主意。
- 如果实现很容易解释,这可能是一个好主意。
- 名称空间是一个非常好的主意——多利用它们!