前幾天做練習題,一直不得其解,后來查閱資料,知道有個叫operator模塊,可以很好的解決
因為是新知識點(之前沒接觸)所以來總結下
01:什么是operator
operator模塊是python中內置的操作符函數接口,它定義了一些算術和比較內置操作的函數。operator模塊是用c實現的,所以執行速度比python代碼快
02:函數的映射操作
03:簡單的實例:
# 導入模塊
from operator import lt
# 調整lt比較大小
print(ls(2,4))
mul(a, b)——支持數/列表/元組與數相乘
a = [1,2,3] b=2
print(mul(a,b)) # 輸出結果:
[1,2,3,1,2,3]
04:解答我遇到的問題
題目:
您需要編寫一個程序,按升序對(名稱,年齡,高度)元組進行排序,其中name是字符串,
age和height是數字。 元組由控制台輸入。 排序標准是:
1:根據名稱排序;
2:然后根據年齡排序;
3:然后按分數排序。
優先級是name> age>得分。
如果給出以下元組作為程序的輸入:
Tom,19,80
John,20,90
Jony,17,91
Jony,17,93
Json,21,85
然后,程序的輸出應該是:
[('John','20','90'),('Jony','17','91'),('Jony','17','93'),
('Json','21 ','85'),('Tom','19','80')]
from operator import itemgetter l = [] print('請輸入:') while True: s = input() if not s: break l.append(tuple(s.split(','))) print(sorted(l, key=itemgetter(0, 1, 2)))