[問題] closure、lambda和產生器的問題

作者: Haruna1998 (無聲雨)   2019-07-11 21:47:11
最近在學python
照著書學還蠻順的
但是有幾個地方搞不太清楚。
我先說說我理解的東西好了
再請各位幫我看看有沒有理解錯誤QQ
closure 簡單來說就是像JavaScript一樣全域變數和本地變數那樣,
可以互相防止污染,
但是可以偷偷的把已經結束的內部函數放到外面一層,
這樣就算函式結束了還是可以繼續使用。
lambda 就是用一行來把小程式做出來,
這樣就可以省去一直命名。
產生器(generator) 這個最不能理解…
看完書大概來說本質還是疊代器,
只是比較簡潔,然後把 return 換成 yield。
啊還是不知道是怎麼個簡潔法…
好像問題有點多,手機排版不知道有沒有亂掉0.0?
作者: iphone2003 (307)   2019-07-11 22:07:00
如果用yield,就不用再特別去寫__iter__和__next__了,簡潔很多
作者: Haruna1998 (無聲雨)   2019-07-12 10:47:00
嗯…感覺先繼續學好了,不然卡著有點難受
作者: thefattiger (LT)   2019-07-12 11:07:00
我用產生器最主要是要它的lazy evaluation
作者: ssivart   2019-07-13 00:32:00
省記憶體

Links booklink

Contact Us: admin [ a t ] ucptt.com