第一篇文章,包含我自己的想法、觀點和可能的知識細分。
請注意,親愛的讀者,這並不是對 Python 單行 for 循環、追加到列表和返回一些數據的能力的深入探討或令人難以置信的分解。不,不。這只是展示瞭如何有趣——以及如何愚蠢——小東西可以組合在一起,讓一些東西變得更愚蠢……是的……但也很整潔。
那麼,讓我們點燃這個垃圾箱吧!萬歲!
在我年輕的時候,在夏令營工作,在一個著名的嬉皮風格的島嶼上學習年輕的方式......我聽到了一首歌。夥計,是不是很吸引人。雖然不是賈斯汀·比伯的朗朗上口,但仍然朗朗上口。一首我從來不知道的歌曲會對我如何開始學習編寫程式碼產生重大影響。一首名為... 「傳遞荷蘭人。」
現在,您可能會想,「雷鬼歌曲與程式設計到底有什麼關係?」請大家豎起耳朵。
如果你像我一樣,列表推導式可能看起來像一些魔法科學、一句台詞,應該「簡化」一切。那種甜蜜、甜美的「Pythonic」方式。但相反,它讓我感覺我的大腦齒輪有點停止運轉(你曾經靠在顯示器上瞇著眼睛嗎? - 是的......完全正確)。
這就好像我被要求將一些神秘的、神奇的“dutchie”(咳嗽..變量..咳嗽)傳遞到左側,但我不知道我傳遞的是什麼,它要去哪裡,或者為什麼它很重要。 (好吧,我做到了,但為了故事的緣故......)
讓我分解一下:列表推導式都是關於傳遞事物,就像歌曲中一樣。這是一種過濾和轉換列表的方法,所有這些都在一個整齊的行中。你應該看看我寫的一些可怕的編碼只是為了“嘿看,我把它塞進了一行代碼!格蘭芬多加分!”我確信你們中的大多數人'一切都可以涉及,(我真的更喜歡多行程式碼,你知道...可讀性)。
為什麼列表推導式很重要: 列表推導式不使用多行循環和append()方法,而是允許您用更少的行編寫簡潔、可讀的程式碼。它們通常也更快,這使得它們成為 Python 開發人員在處理清單時最喜歡的工具。
所以...對於我們這些可能會或可能不會或可能會的人(哇,自動更正讓我在那裡瘋狂地騎行),我給你我的大腦的解決方案來理解最基本的列表理解:
left_hand_side = ['dutchie', 'pon the left hand side'] def catchyReggaeFunction(lyrics): where_the_dutchie_is_passed_to = [ f"pass the {pon_the} pon the left hand side" for pon_the in lyrics if pon_the == 'dutchie' ] return where_the_dutchie_is_passed_to printer = catchyReggaeFunction(left_hand_side) print(printer)
輸出:
['pass the dutchie pin the left hand side']
這個愚蠢的例子的目的是表明列表推導式都是關於傳遞事物的——就像 dutchie 一樣。在本例中,我從清單中過濾掉「dutchie」並將其傳遞到新清單中。
如果您正在努力解決諸如列表推導之類的抽象概念,那麼您並不孤單。每個人一開始都覺得這東西是巫師級的魔法,但過了一會兒就開始有意義了。就像一首朗朗上口的歌曲的副歌,一旦你聽夠了,它就會被記住。
這就是:我從困惑到理解清單理解的旅程,一次一個荷蘭人。
現在,我們不是都玩得很開心嗎?
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3