Python之禅 —— “import this”
Python的理念都包含在Tim Peters撰写的 “ Python ” 之禅中,要获悉这些有关编写优秀的Python代码的指导原则,只需要在编译器中执行命令“ import this ”即可,这些指导原则对于我们是很重要的,能给予我们很大的帮助。
import this
- 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.
—— 平铺胜于嵌套
简单清晰的代码比多层嵌套更加漂亮。
Spare 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.
—— 万事开头难
学习一开始都是困难的,而且你又不是Python之父(这儿的Dutch是指Python之父),坚持学习才能够学好Python。 - 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’s a good idea.
—— 能够简单向别人描述的方案就是一个好方案。 - Namespaces are one honking great idea – let’s do more of those !
—— 命名空间是一个好的理念,善于运用