摘要:通常,這意味著社區(qū)的貢獻(xiàn)者會(huì)為該語(yǔ)言添加一些有趣和特別的彩蛋以及隱藏的特性當(dāng)然前提是不會(huì)增加在生產(chǎn)環(huán)境中使用的風(fēng)險(xiǎn)。據(jù)傳這是中的八榮八恥,每個(gè)有追求的程序員都應(yīng)該謹(jǐn)記于心??勺x性應(yīng)當(dāng)被重視。面對(duì)不明確的定義,拒絕猜測(cè)的誘惑。
閱讀文本大概需要 6.6 分鐘。
當(dāng)一門(mén)編程語(yǔ)言是開(kāi)源的時(shí)候,往往會(huì)有產(chǎn)生一些搞笑和有趣的東西。通常,這意味著社區(qū)的貢獻(xiàn)者會(huì)為該語(yǔ)言添加一些有趣和特別的彩蛋以及隱藏的特性(當(dāng)然前提是不會(huì)增加在生產(chǎn)環(huán)境中使用的風(fēng)險(xiǎn))。
Python 就是一個(gè)很好的例子。作為一門(mén)開(kāi)源的語(yǔ)言,它的社區(qū)為其貢獻(xiàn)了一些十分幽默的東西。
旁注:如果您想觀察彩蛋,請(qǐng)注意,它們只能在第一次工作。如果希望重新運(yùn)行它們,需要重新啟動(dòng) Python shell。
0. Hello World程序員們都熟悉 Hello World 的概念。在大多數(shù)情況下,它指的是使用該編程語(yǔ)言編寫(xiě)的最小程序,它會(huì)將“Hello World”打印到屏幕。這可能是在學(xué)習(xí)新的編程語(yǔ)言時(shí)首先要做的。
Python 有一個(gè)酷酷的隱藏的庫(kù),做了一些有點(diǎn)與眾不同的事:
>>> import __hello__ Hello World...1. April Fool
下面的 April fool 玩笑是由 Barry Warsaw 提出的,與他的退休有關(guān)。他是一位著名的 Python 開(kāi)發(fā)者,在他宣布正式退休的時(shí)候,就誕生了下面這個(gè)彩蛋:
>>> from __future__ import barry_as_FLUFL >>> 1 <> 2 True2. 由 C++ 轉(zhuǎn)換到 Python
"braces"庫(kù)也是一個(gè)具有濃厚程序員風(fēng)格的玩笑,它在其文檔中提到,當(dāng)在編寫(xiě) Python 代碼時(shí)使用這個(gè)庫(kù)可提供使用 C++ 花括號(hào)的功能。但當(dāng)你嘗試使用它的時(shí)候,你將會(huì)看到社區(qū)對(duì)此的看法:
>>> from __future__ import braces SyntaxError: not a chance
哈哈哈,以為導(dǎo)入 braces 就可以使用花括號(hào)來(lái)結(jié)束代碼塊?Python 的答案是:沒(méi)門(mén)兒!
3. 經(jīng)典的 Python 之禪import this
運(yùn)行此命令將顯示由 Tim Peters 編寫(xiě)的"Zen Of Python(Python 之禪)"。據(jù)傳這是 Python 中的『八榮八恥』,每個(gè)有追求的 Python 程序員都應(yīng)該謹(jǐn)記于心。
import this The Zen of Python, by Tim Peters 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!
參考翻譯:
優(yōu)美勝于丑陋。 顯式勝于隱式。 簡(jiǎn)單勝于復(fù)雜。 復(fù)雜勝于難懂。 扁平勝于嵌套。 分散勝于密集。 可讀性應(yīng)當(dāng)被重視。 盡管實(shí)用性會(huì)打敗純粹性,特例也不能凌駕于規(guī)則之上。 除非明確地使其沉默,錯(cuò)誤永遠(yuǎn)不應(yīng)該默默地溜走。 面對(duì)不明確的定義,拒絕猜測(cè)的誘惑。 用一種方法,最好只有一種方法來(lái)做一件事。 雖然一開(kāi)始這種方法并不是顯而易見(jiàn)的,但誰(shuí)叫你不是 Python 之父呢。 做比不做好,但立馬去做有時(shí)還不如不做。 如果實(shí)現(xiàn)很難說(shuō)明,那它是個(gè)壞想法。 如果實(shí)現(xiàn)容易解釋?zhuān)撬锌赡苁莻€(gè)好想法。 命名空間是個(gè)絕妙的想法,讓我們多多地使用它們吧!
4. “反重力”漫畫(huà)import antigravity
輸入這行代碼,會(huì)直接跳轉(zhuǎn)到漫畫(huà)網(wǎng)頁(yè) xkcd。漫畫(huà)很有意思,一個(gè)人漂浮在天空中,他的一位朋友好奇的問(wèn)他是怎么飛起來(lái)的。
對(duì)話內(nèi)容大致翻譯:
上圖:
“你在飛!怎么做到的?”
“Python!”
下左:
“我昨晚學(xué)習(xí)了 Python,一切都是那么簡(jiǎn)單”
“運(yùn)行 HELLO WORLD 只需要 print "Hello World!"”
下中:
“我還是不明白……動(dòng)態(tài)類(lèi)型,還是空格?”
“來(lái)加入我們吧,編程又再次變得有趣起來(lái)了,Python 是一個(gè)全新的世界”
“但你是怎么飛起來(lái)的?”
下右:
“我只是輸入了 import antigravity”
“就這樣?”
“我還對(duì)藥品柜中的所有東西進(jìn)行了采樣比較”(暗指他對(duì)比過(guò)多種編程語(yǔ)言,但還是覺(jué)得 Python 最簡(jiǎn)單)
“但我想這就是 Python.”
文章轉(zhuǎn)載自 :開(kāi)源中國(guó)社區(qū) [http://www.oschina.net]
本文地址:https://www.oschina.net/news/...
歡迎關(guān)注我的微信公眾號(hào)「癡海」,后臺(tái)回去「1024」,領(lǐng)取最新 Python 教程。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/42047.html
摘要:模塊的模塊是處理迭代器的工具集合。迭代器是一種可以在循環(huán)語(yǔ)句包括列表元組和字典中使用的數(shù)據(jù)類(lèi)型。使用模塊中的函數(shù)讓你可以執(zhí)行很多迭代器操作,這些操作通常需要多行函數(shù)和復(fù)雜的列表理解。 Python 多好用不用多說(shuō),大家看看自己用的語(yǔ)言就知道了。但是 Python 隱藏的高級(jí)功能你都 get 了嗎?本文中,列舉了 Python 中五種略高級(jí)的特征以及它們的使用方法,快來(lái)一探究竟吧! sh...
摘要:比如把上面畫(huà)正方形的例子稍做變化重復(fù)執(zhí)行次畫(huà)正方形開(kāi)始畫(huà)正方形結(jié)束右轉(zhuǎn)度執(zhí)行后,可以看到,畫(huà)出一個(gè)非常規(guī)整漂亮的組合圖案。 turtle圖形庫(kù)源于1966年誕生的Logo語(yǔ)言,是入門(mén)Python的有趣工具。因其簡(jiǎn)單便捷的圖形化方法、和立即反饋式的繪畫(huà)效果,成為眾多編程入門(mén)者的首選。相對(duì)于大多數(shù)入門(mén)教材中枯燥的語(yǔ)法學(xué)習(xí),和函數(shù)、方法的演練來(lái)說(shuō),turtle的趣味性顯得別具一格、極富效...
摘要:內(nèi)部機(jī)制探秘和文末附彩蛋和源碼這篇文章比較偏基礎(chǔ),但是對(duì)入門(mén)內(nèi)部機(jī)制和實(shí)現(xiàn)原理卻至關(guān)重要。當(dāng)然也需要明白一些淺顯的內(nèi)部工作機(jī)制。當(dāng)改變出現(xiàn)時(shí),相比于真實(shí)更新虛擬的性能優(yōu)勢(shì)非常明顯。直到最終,會(huì)得到完整的表述樹(shù)的對(duì)象。 React 內(nèi)部機(jī)制探秘 - React Component 和 Element(文末附彩蛋demo和源碼) 這篇文章比較偏基礎(chǔ),但是對(duì)入門(mén) React 內(nèi)部機(jī)制和實(shí)現(xiàn)原...
閱讀 3730·2021-11-17 09:33
閱讀 2756·2021-09-22 15:12
閱讀 3356·2021-08-12 13:24
閱讀 2451·2019-08-30 11:14
閱讀 1742·2019-08-29 14:09
閱讀 1334·2019-08-26 14:01
閱讀 3074·2019-08-26 13:49
閱讀 1786·2019-08-26 12:16