pythonitemgetter函數怎么用?
Operator模塊中也有一類函數可以作為條件過濾。
首先介紹itemgetter函數。假設定義了一個f函數,f=itemgetter(2),那么如果調用f(r),實際會返回r[2]。也就是說,傳入的入參r,最終返回的只是r的索引值為2(從1開始計算)那一部分。
itemgetter函數應用場景:根據tuple的某個字段對tuple列表排序。例如,有一段JSON格式的城市數據,需要按縮寫方式排序:
fromoperatorimportitemgetter
metro_areas=[('Tokyo','JP',36.933,(35.689722,139.691667)),('DelhiNCR','IN',21.935,(28.613889,77.208889)),
('MexicoCity','MX',20.142,(19.433333,-99.133333)),
('NewYork-Newark','US',20.104,(40.808611,-74.020386)),
('SaoPaulo','BR',19.649,(-23.547778,-46.635833)),
]
forcityinsorted(metro_areas,key=itemgetter(1)):
logging.info('city->%s',city)
從分割來看,城市數據數組中的每個元素都是元組形式。itemgetter函數提取tuple的第二個值,作為sorted函數排序的基礎。
以上就是Pythonitemgetter函數的使用,希望能對大家有所幫助!更多Python學習教程請關注IT培訓機構:千鋒教育。