python itemgetter函数实现字典排序

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

1、Itemgetter概念

用于获取对象的哪些位置的数据,参数即为代表位置的序号值

2、使用方法

fromoperatorimportitemgetter

importoperator

调用时需要用operator.itemgetter

3、注意点

operator.itemgetter函数获取的不是值,而是定义了一个函数,通过该函数作用到对象上才能获取值。

4、实例

通过使用 operator 模块的 itemgetter 函数,可以非常容易的排序数据结构,代码如下:

In[46]:fromoperatorimportitemgetter

In[47]:rows_by_fname=sorted(rows,key=itemgetter('fname'))

In[48]:rows_by_fname
Out[48]:
[{'fname':'Big','lname':'Jones','uid':1004},
{'fname':'Brian','lname':'Jones','uid':1003},
{'fname':'David','lname':'Beazley','uid':1002},
{'fname':'John','lname':'Cleese','uid':1001}]

In[49]:rows_by_uid=sorted(rows,key=itemgetter('uid'))

In[50]:rows_by_uid
Out[50]:
[{'fname':'John','lname':'Cleese','uid':1001},
{'fname':'David','lname':'Beazley','uid':1002},
{'fname':'Brian','lname':'Jones','uid':1003},
{'fname':'Big','lname':'Jones','uid':1004}]

在对于字典的排序上,我们已经学过了不少的方法,本篇要带来的是operator 模块中Itemgetter函数的方法。它可以就字典中的某个字段进行排序,最后我们得到的结果也更加有针对性。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。