栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python中使用sorted对列表,字典进行排序

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python中使用sorted对列表,字典进行排序

# sorted 对于列表的排序操作
list1 = [1, 3, 7, 5, 17, 9]
# 顺序操作
list2 = sorted(list1)
# 逆序操作
list3 = sorted(list1, reverse=True)
print(list1)
print(list2)
print(list3)
# 由此可得,sorted对于列表进行操作时并不会改变原有列表,尽管列表本身是可变数据类型
# 结果为
[1, 3, 7, 5, 17, 9]
[1, 3, 5, 7, 9, 17]
[17, 9, 7, 5, 3, 1]

# sorted对于当列表中的元素是元组时进行的操作操作
list4 = [("a", 1), ("c", 3), ("b", 2), ("d", 4)]
# 顺序操作
# sorted(变量名, key=lambda 元素:元素[元素位置]),其中lambda是为了用于匿名函数,可以免去命名函数的麻烦。
list5 = sorted(list4, key=lambda x:x[1])
# 逆序操作
list6 = sorted(list4, key=lambda x:x[1], reverse=True)
print(list4)
print(list5)
print(list6)
# 结果为
[('a', 1), ('c', 3), ('b', 2), ('d', 4)]
[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
[('d', 4), ('c', 3), ('b', 2), ('a', 1)]

# sorted对字典进行排序操作
# 首先使用items方法将字典中的键值对转化为列表,其中列表元素为元组,然后沿用上面的方法排序
dict1 = {'a':1,'b':5, 'c':2, 'd':4}
res1 = sorted(dict1.items(), key=lambda x:x[1])
print(dict1)
print(res1)
#结果为
{'a': 1, 'b': 5, 'c': 2, 'd': 4}
[('a', 1), ('c', 2), ('d', 4), ('b', 5)] 

# 对于items方法的理解:当使用一个变量存储items的返回值时,返回的值为一个类,而当使用一个变量存储遍历这个类之后的结果时返回值则是元组。
dict1 = {'a':1,'b':5, 'c':2, 'd':4}
res1 = dict1.items()
print(type(res1))
print(res1)
print('---------')
for a in dict1.items():
    print(a)
    print(type(a))
# 结果为

dict_items([('a', 1), ('b', 5), ('c', 2), ('d', 4)])
---------
('a', 1)

('b', 5)

('c', 2)

('d', 4)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/487289.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号