第一篇文章,包含我自己的想法、观点和可能的知识细分。
请注意,亲爱的读者,这并不是对 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