python 字典 分别根据值或键进行排序的方法
最近经常遇到根据字母出现的频率进行排序的题目
我的思路一般是借用字典统计字母出现的频率
然后对字典按照值进行排序
但是每次按照值进行排序时
都会忘记排序方法
在此记录一下,以加深印象
字典原始值如下:
dic = {'Emily': 25, 'Dory':3, 'Yilia':2}
先记录根据值进行排序的方法,代码如下:
>>> dic_sort_by_values = sorted(dic.items(), key = lambda x: x[1])
>>> print(dic_sort_by_values)
[('Yilia', 2), ('Dory', 3), ('Emily', 25)]
逆序代码如下,需要增加一个 reverse= True的参数
>>> dic_sort_by_values = sorted(dic.items(), key = lambda x: x[1], reverse = True)
>>> print(dic_sort_by_values)
[('Emily', 25), ('Dory', 3), ('Yilia', 2)]
取前n个值代码如下,需要借用循环及计数器:
>>> required_count = 2
>>> res = []
>>> count = 0
>>> for k ,v in dic_sort_by_values:
count += 1
if count > required_count:
break
else:
print('{}:{}'.format(k, v)) Emily:25
Dory:3
根据键值进行排序的代码如下,两种排序方式返回的数据不同,一种仅返回键组成的列表,另外一种则返回由元组(k,v)组成的列表:
>>> dic_sort_by_keys = sorted(dic.keys())
>>> print(dic_sort_by_keys)
['Dory', 'Emily', 'Yilia']
>>> dic_sort_by_keys = sorted(dic.items(), key = lambda x: x[0])
>>> print(dic_sort_by_keys)
[('Dory', 3), ('Emily', 25), ('Yilia', 2)]
逆序代码如下,需要增加一个 reverse= True的参数
>>> dic_sort_by_keys = sorted(dic.items(), key = lambda x: x[0], reverse = True)
>>> print(dic_sort_by_keys)
[('Yilia', 2), ('Emily', 25), ('Dory', 3)]
python 字典 分别根据值或键进行排序的方法的更多相关文章
- python字典改变value值方法总结
今天这篇文章中我们来了解一下python之中的字典,在这文章之中我会对python字典修改进行说明,以及举例说明如何修改python字典内的值.我们开始进入文章吧. 首先我们得知道什么是修改字典 修改 ...
- python 字典中 重复值去除
tuple_r_dict = lambda _dict: dict(val[::-1] for val in _dict.items()) # Python3.x tuple_r_dict(tuple ...
- python字典设置初始值setdefault()与get()
L = ['you','me','you','me','you','me','you'] D = {} for i in L: D[i] += 1 print(D) 执行以下代码会发生错误 Trace ...
- Python字典中的值为列表或字典的构造方法
转自: https://blog.csdn.net/buside/article/details/81323871 1.值为列表的构造方法 dic = {} dic.setdefault(key,[] ...
- Python 字典的取值
不能用.取值 .是获取属性或方法 只能用中括号或者get方法 中括号和get中可以放字符串或者变量 get与[]的区别在于当key不存在,get不会报错,而且get可以设置取不到值时返回的默认值.
- python 字典有序无序及查找效率,hash表
刚学python的时候认为字典是无序,通过多次插入,如di = {}, 多次di['testkey']='testvalue' 这样测试来证明无序的.后来接触到了字典查找效率这个东西,查了一下,原来字 ...
- Python 字典 keys() 方法
描述 Python 字典 keys() 方法以列表形式(并非直接的列表,若要返回列表值还需调用list函数)返回字典中的所有的键. 语法 keys() 方法语法: D.keys() 参数 无. 返回值 ...
- [ Python入门教程 ] Python字典数据类型及基本操作
字典是Python中重要的数据类型,字典是由"键-值"对组成的集合,"键-值"对之间用逗号隔开,包含在一对花括号中.字典中的"值"通过&qu ...
- python 字典(dictionary)一些方法
1.python 字典(Dictionary) keys() 函数以列表返回一个字典所有的键. keys()语法: dict.keys() 2.setdefault()方法 python字典setde ...
随机推荐
- 【Linux】【Basis】CentOS启动流程
1. 基础概念 1.1 Linux系统的组成部分:内核+根文件系统 内核:进程管理.内存管理.网络协议栈.文件系统.驱动程序.安全功能 IPC:In ...
- 【Java基础】方法调用机制——MethodHandle
MethodHandle是Java7引入的一种机制,主要是为了JVM支持动态语言. 一个MethodHandle调用示例 共有方法调用 首先,演示一下最基本的MethodHandle使用. 第一步:创 ...
- 从orderby引发的SQL注入问题的思考
背景: 某一天准备上线,合完master之后准备发布了,忽然公司的代码安全监测提示了可能在代码中存在sql注入的风险,遂即检查,发现sql注入问题 既然碰到了这个问题,那就了简单了解下sql注入 基础 ...
- 【Spark】【RDD】从内存(集合)创建RDD
val list = List(1,2,3) var rdd = sc.parallelize(list) rdd.partitions.size 通过调用SparkContext的paralleli ...
- 【经验分享】win10 cmake 构建 Tengine 工程
欢迎关注我的公众号 [极智视界],回复001获取Google编程规范 O_o >_< o_O O_o ~_~ o_O 本教程详细记录了在 win10 环境中 ...
- C++STL标准库学习笔记(一)sort
前言: 近来在学习STL标准库,做一份笔记并整理好,方便自己梳理知识.以后查找,也方便他人学习,两全其美,快哉快哉! 这里我会以中国大学慕课上北京大学郭炜老师的<程序设计与算法(一)C语言程序设 ...
- LuoguP5690 [CSP-S2019 江西] 日期 题解
Content Alice 在纸上写下了一个日期,形式为 \(\text{MM-DD}\),其中 \(\text{MM}\) 与 \(\text{DD}\) 都是两位数字,分别表示月和天,然而这个日期 ...
- JAVA使用经纬度通过腾讯地图API获取详细地址
官方文档:https://lbs.qq.com/service/webService/webServiceGuide/webServiceGcoder package com.weixin.map; ...
- 创建Ubuntu server 服务器git项目
服务器端: mkdir project.git cd project.git git init --bare cd .. p.p1 { margin: 0; font: 11px Menlo; col ...
- ffmpeg、数字音频教程、JUCE、std::tuple
下载网易云音乐的视频 https://yunyinyue.iiilab.com/ 模板教程: https://github.com/wuye9036/CppTemplateTutorial/blob/ ...