已采納回答 / 一只_廢喵
Python pass是空語句,是為了保持程序結(jié)構(gòu)的完整性。pass 不做任何事情,一般用做占位語句。當(dāng)你在編寫一個(gè)程序時(shí),執(zhí)行語句部分思路還沒有完成,這時(shí)你可以用pass語句來占位,也可以當(dāng)做是一個(gè)標(biāo)記
2017-08-13
最新回答 / 慕粉2104286862
因?yàn)榉謹(jǐn)?shù)線不同,要編寫不同的set_passline函數(shù),但是各個(gè)set_passline()中用于判斷是否及格的cmp()函數(shù)是一樣的代碼。用了閉包,也就是節(jié)省了編寫比較函數(shù)cmp()的代碼。也就是重用了cmp()比較函數(shù)的代碼。至于你說的兩個(gè)參數(shù),是那么第二個(gè)參數(shù)傳進(jìn)來也要在比較時(shí)多寫基于第二個(gè)參數(shù)的代碼(在此琢磨一下),當(dāng)n多個(gè)參數(shù)就寫重復(fù)的n多次
2017-08-05
一開始講閉包的時(shí)候,變量名確實(shí)讓人容易混淆,但后面看到裝飾器的時(shí)候,就知道了標(biāo)準(zhǔn)就是這樣的,從講課的角度看,這一點(diǎn)沒有分親,其他講的很清楚。
2017-08-03
那么也就不難理解f_100 = set_passline(60)之后
其實(shí)f_100就是cmp這個(gè)函數(shù)當(dāng)passline=60時(shí)的狀態(tài)了
本質(zhì)上f_100就是一個(gè)函數(shù),所以后續(xù)的f_100(89)其實(shí)就是cmp(89)
還有我想要表達(dá)的一點(diǎn),每個(gè)人的基礎(chǔ)不一樣,所以有的人可能聽不太明白老師講的東西,這很正常,如果我們能幫助他們理解,那再好不過;就算不能幫助他們,請不要貶低他們
其實(shí)f_100就是cmp這個(gè)函數(shù)當(dāng)passline=60時(shí)的狀態(tài)了
本質(zhì)上f_100就是一個(gè)函數(shù),所以后續(xù)的f_100(89)其實(shí)就是cmp(89)
還有我想要表達(dá)的一點(diǎn),每個(gè)人的基礎(chǔ)不一樣,所以有的人可能聽不太明白老師講的東西,這很正常,如果我們能幫助他們理解,那再好不過;就算不能幫助他們,請不要貶低他們
2017-08-02
幫大家整理一下思路:
首先注意一下這個(gè)return是在set_passline函數(shù)里而不是cmp函數(shù)里的
那么這個(gè)return是在執(zhí)行了set_passline(60)或set_passline(90)時(shí)進(jìn)行返回的
其次這個(gè)return的返回值是cmp而不是cmp(89)
那么就表示這個(gè)return返回的其實(shí)不是一個(gè)數(shù)值,而是整個(gè)cmp這個(gè)函數(shù)
也就是當(dāng)執(zhí)行了set_passline(60)的時(shí)候,返回的是
def cmp(val):
if val >= 60:
print('Pass')
else:
print('Failed')
這個(gè)函數(shù)
首先注意一下這個(gè)return是在set_passline函數(shù)里而不是cmp函數(shù)里的
那么這個(gè)return是在執(zhí)行了set_passline(60)或set_passline(90)時(shí)進(jìn)行返回的
其次這個(gè)return的返回值是cmp而不是cmp(89)
那么就表示這個(gè)return返回的其實(shí)不是一個(gè)數(shù)值,而是整個(gè)cmp這個(gè)函數(shù)
也就是當(dāng)執(zhí)行了set_passline(60)的時(shí)候,返回的是
def cmp(val):
if val >= 60:
print('Pass')
else:
print('Failed')
這個(gè)函數(shù)
2017-08-02
原來之所以也用my_sum而不另外換個(gè)函數(shù)名是為了和用語法糖抱持一致,用了語法糖@裝飾后也是原函數(shù)名,不過添加了裝飾效果。
2017-07-28