課程
/后端開發(fā)
/Python
/python裝飾器
這里為什么要用閉包呢?改成一個兩個參數(shù)的函數(shù)不也可以解決這個問題么?
2017-08-05
源自:python裝飾器 2-2
正在回答
因為分數(shù)線不同,要編寫不同的set_passline函數(shù),但是各個set_passline()中用于判斷是否及格的cmp()函數(shù)是一樣的代碼。用了閉包,也就是節(jié)省了編寫比較函數(shù)cmp()的代碼。也就是重用了cmp()比較函數(shù)的代碼。至于你說的兩個參數(shù),是那么第二個參數(shù)傳進來也要在比較時多寫基于第二個參數(shù)的代碼(在此琢磨一下),當(dāng)n多個參數(shù)就寫重復(fù)的n多次
神爵 提問者
狗不理運維 回復(fù) 神爵 提問者
舉報
本門python教程將代領(lǐng)大家輕松搞定Python裝飾器運用
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2017-08-06
因為分數(shù)線不同,要編寫不同的set_passline函數(shù),但是各個set_passline()中用于判斷是否及格的cmp()函數(shù)是一樣的代碼。用了閉包,也就是節(jié)省了編寫比較函數(shù)cmp()的代碼。也就是重用了cmp()比較函數(shù)的代碼。至于你說的兩個參數(shù),是那么第二個參數(shù)傳進來也要在比較時多寫基于第二個參數(shù)的代碼(在此琢磨一下),當(dāng)n多個參數(shù)就寫重復(fù)的n多次