我正在編輯一本互聯(lián)網(wǎng)技術(shù)的書稿,《Python編程基礎(chǔ)與HTTP接口測(cè)試》澜驮。這本書不厚陷揪,因?yàn)樽髡哒f(shuō),我想教給大家的是一種學(xué)習(xí)方法杂穷,而不是語(yǔ)句本身悍缠。
Python是一款純粹的自由軟件,每個(gè)人都可以為它做貢獻(xiàn)耐量。我在書里發(fā)現(xiàn)有一段非常有意思的Python之禪飞蚓。這段禪語(yǔ),不是Python的創(chuàng)始人寫的廊蜒,是一個(gè)叫Tim Peter寫的趴拧,被官方認(rèn)可為Python的編程原則。
本書作者阿奎說(shuō):Python之禪山叮,體現(xiàn)了Python這門語(yǔ)言的設(shè)計(jì)哲學(xué)著榴,其中的很多觀點(diǎn)對(duì)于日常的編程也是很有指導(dǎo)意義的。
讀完這些禪語(yǔ)屁倔,我覺(jué)得它不僅僅與編程有關(guān)脑又,更與人生有關(guān)。這些話更讓我覺(jué)得锐借,每一個(gè)優(yōu)秀的“攻城獅”和“程序媛”问麸,原來(lái)都是哲學(xué)家。反之瞎饲,如果沒(méi)有經(jīng)過(guò)深入的哲學(xué)和人文科學(xué)的學(xué)習(xí)和積累口叙,一個(gè)只愛(ài)理工科的人,也不容易成為優(yōu)秀的編程者嗅战。
來(lái)妄田,讀一下這些禪語(yǔ)吧!他們一點(diǎn)不深?yuàn)W驮捍,但是真的很哲學(xué)疟呐。
The Zen of Python, by Tim Peters
Python之禪,蒂姆?彼得斯
Beautiful is better than ugly.
優(yōu)美勝過(guò)丑陋东且。
Explicit is better than implicit.
顯示勝過(guò)隱式启具。
Simple is better than complex.
簡(jiǎn)單勝過(guò)復(fù)雜。
Complex is better than complicated.
復(fù)雜勝過(guò)繁復(fù)珊泳。
Flat is better than nested.
串行勝過(guò)嵌套鲁冯。
Sparse is better than dense.
稀疏勝過(guò)稠密拷沸。
Readability counts.
可讀性很重要。
Special cases aren't special enough to break the rules. Although practicality beats purity.
雖然理想很豐滿薯演,現(xiàn)實(shí)很骨感撞芍,但是所謂特例并不足以打破上面的這些規(guī)則。
Errors should never pass silently. Unless explicitly silenced.
所有錯(cuò)誤都不應(yīng)該被直接忽略跨扮,除非能夠被精確的捕獲之后序无。(其中一個(gè)典型的例子就是,不建議用Exception:pass來(lái)直接忽略所有異常衡创。)
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.
當(dāng)面對(duì)不明確的情況時(shí)帝嗡,要拒絕去猜測(cè)的誘惑。應(yīng)該有一種璃氢,最好是唯一一種哟玷,顯而易見(jiàn)的解決方案。盡管起初拔莱,那種解決方案可能并不是那么顯而易見(jiàn)碗降,因?yàn)槟悴皇荘ython 之父(這里的Dutch是指Python之父Guido Van Rossum隘竭,他是荷蘭人塘秦。)
Now is better than never. Although never is often better than right now.
現(xiàn)在行動(dòng)勝過(guò)永不開(kāi)始。盡管动看,永不開(kāi)始經(jīng)常好過(guò)沖動(dòng)的開(kāi)始尊剔。
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.
如果你的實(shí)現(xiàn)難于向別人解釋,這往往不是個(gè)好主意菱皆。如果你的實(shí)現(xiàn)很容易向別人解釋须误,這可能是個(gè)好主意。
Namespaces are one honking great idea -- let's do more of those!
命名空間是一個(gè)令人激動(dòng)的偉大想法仇轻,讓我們將它發(fā)揚(yáng)光大京痢。
我是簡(jiǎn)書出版合伙人書香云舍-張瑞喜,關(guān)于出版篷店,歡迎找我祭椰。