使用sorted对字典排序

有时我们需要按照字典数据的键值对进行排序,这个时候就可以用到sorted函数。

import operator
dic={"testA":3,"testC":1,"testB":4,"testD":2}
dicn=sorted(dic.items(),key=operator.itemgetter(0))
print(dicn)

比如我们要对dic里面的内容进行排序

如果要key值排序,写0。

如果value值排序,写1

1、程序按key排序

dicn=sorted(dic.items(),key=operator.itemgetter(0))

输出结果:

[('testA', 3), ('testB', 4), ('testC', 1), ('testD', 2)]

2、程序按value排序

dicn=sorted(dic.items(),key=operator.itemgetter(1))

输出结果:

[('testC', 1), ('testD', 2), ('testA', 3), ('testB', 4)]

3、程序按指定的value排序

dic2=[{"testA":"d:\rr\tt","num":3},{"testC":"d:\rr1\tt","num":1},{"testB":"d:\rr2\tt","num":2}]
dicn=sorted(dic2,key=operator.itemgetter("num"))
print(dicn)

如dic2按照num数值的大小排序

输出结果:

[{'testA': 'd:\rr1\tt', 'num': 1}, {'testA': 'd:\rr2\tt', 'num': 2}, {'testA': 'd:\rr\tt', 'num': 3}]

打印出dicn的内容

for i in range(0,3):print(dicn[i])

输出结果:

{'testC': 'd:\rr1\tt', 'num': 1}
{'testB': 'd:\rr2\tt', 'num': 2}
{'testA': 'd:\rr\tt', 'num': 3}

接着打印出dicn里面每个列表的每个键内容:

for i in range(0,3):print(dicn[i])for content in dicn[i]:print(content)

输出结果:

{'testC': 'd:\rr1\tt', 'num': 1}
testC
num
{'testB': 'd:\rr2\tt', 'num': 2}
testB
num
{'testA': 'd:\rr\tt', 'num': 3}
testA
num

接着打印出dicn里面每个列表的第一个键值对内容:

for i in range(0,3):print(dicn[i])n=0for content in dicn[i].items():if n==0:print(content)n=n+1

运行结果:

{'testC': 'd:\rr1\tt', 'num': 1}
('testC', 'd:\rr1\tt')
{'testB': 'd:\rr2\tt', 'num': 2}
('testB', 'd:\rr2\tt')
{'testA': 'd:\rr\tt', 'num': 3}
('testA', 'd:\rr\tt')

打印出每个子列第一个表键值对内容

for i in range(0,3):print(dicn[i])n=0for content in dicn[i].items():if n==0:print(content[0])print(content[1])n=n+1

运行结果:

{'testC': 'd:\\rr1\\tt', 'num': 1}
testC
d:\rr1\tt
{'testB': 'd:\\rr2\\tt', 'num': 2}
testB
d:\rr2\tt
{'testA': 'd:\\rr\\tt', 'num': 3}
testA
d:\rr\ttProcess finished with exit code 0

愿每个测试都能顺利转为测试开发,提高职业技能,成为前1%的存在,为公司节约更多的成本,为社会创造更大的价值,为自己和家庭谋求更高的收入,所有人不受职业年龄限制,越老越吃香,直至财富自由;愿测试技术越来越进步,测试效率提高,软件质量不断提高。愿祖国更加美好,人民更加幸福。多喜乐,常安宁。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/861921.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

秋招Java后端开发冲刺——设计模式

本文介绍Java中的代理模式,及一些常见的模式应用。 一、Java设计模式 Java中最常见的设计模式主要有23种,如表所示: 表格:Java设计模式分类 类型设计模式创建型模式单例模式(Singleton Pattern)工厂方法…

MYSQL 四、mysql进阶 5(InnoDB数据存储结构)

一、数据库的存储结构:页 索引结构给我们提供了高效的索引方式,不过索引信息以及数据记录都是保存在文件上的,确切说时存储在页结构中,另一方面,索引是在存储引擎中实现的,Mysql服务器上的存储引擎负责对表…

Cesium 实战 - 自定义纹理材质系列之 - 动态扩散效果

Cesium 实战 - 自定义纹理材质系列之 - 动态扩散效果 核心代码完整代码在线示例Cesium 给实体对象(Entity)提供了很多实用的样式,基本满足普通项目需求; 但是作为 WebGL 引擎,肯定不够丰富,尤其是动态效果样式。 对于实体对象(Entity),可以通过自定义材质,实现各种…

World of Warcraft [CLASSIC] Level 70 Dire Maul (DM)

[月牙钥匙] [大型爆盐炸弹] World of Warcraft [CLASSIC] Level 70 厄运之槌,完美贡品,Dire Maul (DM) Foror‘s Compendium of Dragon Slaying 佛洛尔的屠龙技术纲要 因为不是兽王宝宝,而且开始位置放的不对&am…

C# —— 方法参数ref和out的作用

public static void Test(ref int a){a 10;}public static void GetValue(out int x){x 10;} ref 和 out 分别使用在方法的参数前面 ref 关键字可以使参数变成引用类型的参数, int a 10; Test(ref a); Console.WriteLine(a); 如果方法参数不加ref; 结果10&…

洛谷U389682 最大公约数合并

这道题最后有一个性质没有想出来,感觉还是有一点遗憾。 性质一、贪心是不对的 8 11 11 16虽然第一次选择8和16合并是最优的,但是如果合并两次的话8 11 11是最优的。 性质二 、有1的情况就是前k1个,也就是说,很多情况下取前k1都…

0000电子技术基础概述

数电 未来课的基础 以前是模块、器件级 现在是 系统级 价格、性能、 技术更新快速的好处:得到了实惠 坏处:工程师需要不断地学习,不变就容易out,要用发展的眼光看待问题 了解基础知识、还要有前沿概念。 理论课、实践课要相结…

CNN神经网络调参技巧

一、基本网络结构 1.若干块,每块:卷积BN激活池化 2.若干块,每块:卷积激活Dropout 3.若干块,每块:fc激活Dropout 二、技巧 1. 损失曲线 常见曲线是先快速下降后趋于平缓,如果线性下降&…

mybatisplus自带的雪花算法(IdType.ASSIGN_ID)无法自动生成弊端缺点,以及改进方法

前言 今日在使用mybatisplus的雪花算法自动给id赋值时发现怎么都是null的情况,这尼玛测了半天,终于发现巨坑,废话不多说,直接上干货 IService.save 只有调用IService中的save方法才能正常生成id,像IService.saveBatc…

Vue移动端动态表单生成组件

FormCreate 是一个可以通过 JSON 生成具有动态渲染、数据收集、验证和提交功能的表单生成组件。支持6个UI框架,适配移动端,并且支持生成任何 Vue 组件。内置20种常用表单组件和自定义组件,再复杂的表单都可以轻松搞定。 帮助文档 | 源码下载…

Day35:2734. 执行字串操作后的字典序最小字符串

Leetcode 2734. 执行字串操作后的字典序最小字符串 给你一个仅由小写英文字母组成的字符串 s 。在一步操作中,你可以完成以下行为: 选择 s 的任一非空子字符串,可能是整个字符串,接着将字符串中的每一个字符替换为英文字母表中的前…

视频技术朝着8K超高清方向发展,安防监控领域将迎来怎样变化?

一、背景 随着科技的日新月异,视频技术已逐渐成为我们日常生活中不可或缺的一部分。从娱乐、教育到安全监控,视频技术无处不在,并以其独特的方式影响着我们的生活方式。本文将探讨视频技术的发展趋势,并重点关注其在监控领域的应…

【ai】李沐 动手深度学学v2 环境安装:anaconda3、pycharm、d2

cuda-toolkit cuda_12.5.0_windows_network.exe 官方课程网站 第二版资源下载release版本 pycharm版本 李沐 【动手学深度学习v2 PyTorch版】 课程笔记 CUDA 选择11, 实际下载 12.5.0

C++里的异同点

文章目录 1. 可以在构造函数和析构函数中调用虚函数吗?2. 类对象的内存模型(内存布局)3. 菱形继承问题(钻石问题)如何解决?4. 堆和栈内存区别5. static_cast和dynamic_cast异同6. 智能指针的实现机制7. 移动…

无需劳师动众,让石油化工DCS集散控制系统轻松实现无线传输!

石油化工中,为了保证较高的可靠性和安全性,大量使用的是DCS集散控制系统。与FCS现场总线的“现场采集,转换为数字信号来集中传输”不同,DCS系统为了避免由于线缆断裂或者节点问题导致整个控制系统失灵,采用“分散传输,集中采集”的方式,即每个传感器通过4-20mA的模拟量通…

custom_evaluator.py

import numpy as np from pycocotools.cocoeval import COCOeval# 自定义COCOeval类,继承自COCOeval class CustomCOCOeval(COCOeval):# 重写computeIoU方法def computeIoU(self, imgId, catId):p self.paramsif p.useCats:gt self._gts[imgId, catId]dt self._d…

Linux——进程练习

1、使用进程知识点&#xff0c;尝试完成如下功能: 输入n&#xff0c; 动态生成n个子进程&#xff0c;并打印输出各自进程的pid号。 #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <string.h>#include <sys/types.h>in…

Linux下创建Oracle数据库的实例

1.安装前准备 1.1.安装前准备一 安装前准备信息 数据库版本&#xff1a;Oracle19.16.0.0.0Linux版本&#xff1a;Red Hat Enterprise Linux Server release 7.9 (Maipo)主机名&#xff1a;ace-test-84IP&#xff1a;10.10.10.212SID&#xff1a;dcpfareintservice_name&#x…

电机应用相关名词介绍

1.电机转速 定义&#xff1a;电机转速指电机工作时旋转的速度&#xff0c;是衡量电机性能的重要指标之一。 单位&#xff1a; 每分钟转数&#xff08;RPM&#xff09;&#xff1a;即Revolutions Per Minute&#xff0c;表示电机每分钟旋转的圈数。 每秒转数&#xff08;RPS…

【小工具】Unity批量删除物体上引用丢失的脚本

介绍 Unity批量删除物体上引用丢失的脚本 使用场景 当在外部导入资源时会造成物体上挂载的脚本引用丢失&#xff0c;一个个删除比较麻烦&#xff0c;可以借用这个工具快速实现 工具原理 继承EditorWindow绘制一个自定义的编辑器窗口 加载Assets目录下所有预制体 获取其所有…