案例:

某班英语成绩以字典的形式存储为:

{‘lili’:78, ‘jin’:50, ‘liming’: 30, ......}

依据成绩高低,进行学生成绩排名

如何对字典排序?

方法1:

#!/usr/bin/python3

from random import randint

def sort_dict(data):

# 获得字典的key

keys = data.keys()

# 获得字典的value

valus = data.values()

# 按(value,keys)进行zip拼接

data_items = zip(valus, keys)

# 按value进行排序,依据zip函数值的先后顺序,reverse表示列表是否翻转

return sorted(data_items, reverse=True)

if __name__ == '__main__':

# 生成abcdefg学生对应的分数

data = {k: randint(0, 100) for k in 'abcdefg'}

# 获取排名

result = sort_dict(data)

print(result)

方法2:

按key排序

#!/usr/bin/python3

from random import randint

def sort_dict(data):

print(data.items())

# 按key进行排序,reverse 表示列表是否翻转,x[0] 取的是data.items()中对应字典的key值

return sorted(data.items(), key=lambda x: x[0], reverse=True)

if __name__ == '__main__':

# 生成abcdefg各学生对应的分数

data = {k: randint(0, 100) for k in 'abcdefg'}

# 获取排名

result = sort_dict(data)

print(result)

按value排序

#!/usr/bin/python3

from random import randint

def sort_dict(data):

print(data.items())

# 按value进行排序,reverse 表示列表是否翻转,x[0] 取的是data.items()中对应字典的value值

return sorted(data.items(), value=lambda x: x[1], reverse=True)

if __name__ == '__main__':

# 生成abcdefgg各学生对应的分数

data = {k: randint(0, 100) for k in 'abcdefg'}

# 获取排名

result = sort_dict(data)

print(result)

先把字典变成列表中元组形式,然后通过sorted函数,lambda迭代每个列表值,x[0]指向字典key,x[1]指向value,reverse是否反转,默认从小到大

python 对输入的单词进行字典排序_Python-对字典进行排序相关推荐

  1. python列表中字典排序_python中字典排序,列表中的字典排序

    python中字典排序,列表中的字典排序 一.使用python模块:operator import operator #首先要导入模块operator x = {1:2, 3:4, 4:3, 2:1, ...

  2. python升序和降序排序_python中序列的排序,包括字典排序、列表排序、升序、降序、逆序...

    一.基础概念 我们知道python中的内建序列包括字典.列表.元组.字符串等,序列是python中最基本的数据结构. 列表.元组.字符串这类的序列的索引默认第一个元素的索引从0开始,第二个元素的索引是 ...

  3. python图的字典表示_Python dict字典精讲

    Python 字典也是一个集合,但是其每个元素包含两部分--键和值,如图1所示: 图1:字典模型 和列表一样的是,字典对元素个数没有限制,可以动态添加和删除元素:和列表不同的是,字典对元素自动按照某种 ...

  4. python中字典使用_python中字典的使用

    python中的字典的特性: 在字典中的元素是散列存放的,没有顺序, 在进行增删改查的时候使用字典中需要的关键字(key)即可. 一: 创建字典 1)直接定义一个: dict = {'ob1':'co ...

  5. python字典查询_python查询字典

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 开发准备cas 的 python sdk 包含了用于访问和操作 cas 的所有 ...

  6. python实现排序_python实现以及所有排序大总结【转】

    原址 一.概述 排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存. 我们这里说说八大排序就是内部排序. ...

  7. python 类属性排序_Python实现多属性排序的方法

    多属性排序: 把需要排序的属性拿出来作为一个 tuple,主要的放前面,次要的放后面. 假如某对象有n个属性,那么先按某规则对属性a进行排序,在属性a相等的情况下再按某规则对属性b进行排序,以此类推. ...

  8. python获取字典长度_Python基础-字典

    字典的创建 字典是存放一系列键值对的数据结构,对标js中的对象,也对标java中的map. 现实中的例子就是通讯录,根据这个人的名字就可以得到他的电话号码. 定义字典的写法跟js中定义对象是一样的,两 ...

  9. mysqlorderby数字字符串排序_Python中的元组排序和深度比较

    比较Python中的东西.这听起来几乎是不需要教的,但是我发现Python的比较运算符经常被Python新手误解和低估. 我们来回顾一下Python的比较运算符如何处理不同类型的对象,然后看看如何使用 ...

最新文章

  1. codevs 1105 过河
  2. MongoDB windows解压缩版安装
  3. 服务器检测到客户端退出或崩溃后,如何优雅地做出反应
  4. java awt文件上传_springMVC实现前台带进度条文件上传的示例代码
  5. C++ OpenCV 问题
  6. html5播放器占用带宽情况,分享|用 bmon 查看网络带宽使用情况
  7. 基于visual Studio2013解决面试题之1401冒泡排序
  8. 网络学习(六)Windows XP系统之ghost安装
  9. SQLMAP使用教程(一)
  10. php word 生成图片,php如何把word转图片
  11. 云计算数据中心运维管理的五大重点
  12. 通过frp穿透实现rdp远程电脑桌面
  13. 记录::Opencv调用tensorflow2.x-Keras模型
  14. 为什么我要选择使用Yarn来做Docker的调度引擎
  15. bulldog2 靶机渗透
  16. 七日年化收益率怎么算「知识普及」
  17. python爬虫爬取东方财富网股票走势+一些信息
  18. Intel公布Penryn四核CPU价格 最低209美元
  19. android登录加密传输,android环境下两种md5加密方式(示例代码)
  20. (附源码)springboot 在线考试系统 毕业设计461317

热门文章

  1. 洛谷P4114 Qtree1(树链剖分+线段树)
  2. 分析:“AI on Hadoop”有意义吗?
  3. Spring AOP之四:利用AOP实现动态数据源切换
  4. POI以SAX方式解析Excel2007大文件(包含空单元格的处理) Java生成CSV文件实例详解...
  5. int*与(int*)的差别
  6. android开发全然退出activity
  7. 关键路径问题--完美版
  8. Tomcat内存设置详解
  9. 开发自定义JSF组件(4) 保存状态与恢复状态
  10. 将窗体显示在 PageControl 上。