**如下,盡可能獨立閱讀:
1#2from urllib.request import urlopen #
匯入乙個包,這就是egon留的乙個坑
3def get(url):#
這是為了保證題目的原裝性所以還是要有乙個url引數,實際上完全沒有這個必要
4def index():#
可能是egon想要我們更加熟悉閉包的概念
5while
true:
6 url = yield
#在這裡將yield返回的值賦給url
7print(urlopen(url).read())#
列印url讀出的結果
8return
index
9 g=get("
純粹為了題目要求留出的無聊引數
")()#
這裡為了題目中的g生成器函式返回值10#
其實上面這句話可以被理解為↓11#
gen = get("純粹為了題目要求留出的無聊引數")12#
g = gen()13#
這裡就是用到了多重函式的概念
14 next(g)#
程式執行到yield時,url等待yield的返回值
15 g.send("
")#將引數值使用send的方式傳遞給yield16#
傳值之後yield將值返回給url,程式繼續執行直到迴圈再次遇到yield時,url等待yield的返回值
17 g.send("
")18 g.send("
")
練習 生成器和模組
1.寫乙個生成式能夠產生的資料為 1,4,27,256,3125,9 9num1 n n for n in range 1,10 print next num1 2.寫乙個生成式能夠產生1 10中所有半徑是偶數的圓的面積num2 math.pi r 2 for r in range 1,11 if ...
Python練習 乙個簡單的生成器
今天我們學習了生成器,怎麼理解生成器呢,其實就是使用函式的方式自己建立乙個迭代器 1 2 做乙個簡單的生成器 3def easygene args 建立乙個生成器方法並傳遞多個引數 4for i in args 5yield i 將獲取的多個引數值,全部yield返回 6 g easygene a ...
python生成器練習
def odd max n 0 while n max yield 2 n n n 1 print 2 n return done f odd 11 print f for i in f print i while true try x next f print g x except stopite...