課程
/后端開發
/Python
/python進階
?sorted([36,?5,?12,?9,?21],?reversed_cmp)
這里面的x和y是哪個啊,我看不懂求大神講一下,不是傳出-1,0,1嗎,怎么就排序了
2019-03-10
源自:python進階 2-7
正在回答
如果 x 應該排在 y 的前面,返回 -1,如果 x 應該排在 y 的后面,返回 1。如果 x 和 y 相等,返回 0。且看上面這一句話,調用函數后,函數會返回值,這幾個值分別是-1,0,1,如果返回-1,那么就說明x應該排在y的前面,比如第一次傳入,調用函數后,x的 形式參數為36,y的形式參數為5,那么按照函數內部的語句功能,x>y,也即36>5,那么返回-1,這樣就通知sorted高階函數把36排在5的前面,以此類推直到排序完成
原來sort就是定義了這個機制,謝謝
舉報
學習函數式、模塊和面向對象編程,掌握Python高級程序設計
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2019-03-10
如果 x 應該排在 y 的前面,返回 -1,如果 x 應該排在 y 的后面,返回 1。如果 x 和 y 相等,返回 0。且看上面這一句話,調用函數后,函數會返回值,這幾個值分別是-1,0,1,如果返回-1,那么就說明x應該排在y的前面,比如第一次傳入,調用函數后,x的 形式參數為36,y的形式參數為5,那么按照函數內部的語句功能,x>y,也即36>5,那么返回-1,這樣就通知sorted高階函數把36排在5的前面,以此類推直到排序完成
2019-03-12
原來sort就是定義了這個機制,謝謝