列表推导式与生成表达式的区别
生活随笔
收集整理的這篇文章主要介紹了
列表推导式与生成表达式的区别
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
閱讀目錄
列表推導(dǎo)式與生成式表達(dá)式的區(qū)別:
#列表推導(dǎo)式
-------------------------------------------------------------------- 注:如果你對python感興趣,我這有個學(xué)習(xí)Python基地,里面有很多學(xué)習(xí)資料,感興趣的+Q群:895817687 --------------------------------------------------------------------res=[i for i in range(6)] print(res)結(jié)果:[0, 1, 2, 3, 4, 5]#生成表達(dá)式:
res=(i for i in range(6)) print(res)結(jié)果:<generator object <genexpr> at 0x0000013EAD04EF68>總結(jié):
相同點:內(nèi)部代碼結(jié)構(gòu)相同
列表推導(dǎo)式和生成表達(dá)式不同點:
①表現(xiàn)形式上:列表推導(dǎo)式是[],而生成表達(dá)式是()。
②最核心的不同是結(jié)果,列表推導(dǎo)式是直接把列表給你,而生成表達(dá)式只是給了你這個列表的內(nèi)存地址,你要拿里面的數(shù)據(jù)
我就給你,你不拿我就把個內(nèi)存地址放那,即使用的時候才使用和分配內(nèi)存。
*** 形象的比喻:列表推導(dǎo)式相當(dāng)于給了你一筐雞蛋,而生成表達(dá)式是給了你一個老母雞。反正都能拿到蛋,只是形式不一樣而已。
總結(jié)
以上是生活随笔為你收集整理的列表推导式与生成表达式的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Django框架深入了解_05 (Dja
- 下一篇: 列表逆向排列的几种实现形式