python 字典中 重复值去除
tuple_r_dict = lambda _dict: dict(val[::-1] for val in _dict.items()) # Python3.x tuple_r_dict(tuple_r_dict(z)) 整理一下相关知识
1、lambda 匿名函数,冒号前为参数,个数可以有0个或多个,冒号右边为返回值
lambda [arg1 [, agr2,.....argn]] : expression
lambda [参数1[参数2,...]]:返回值
f1=lambda x:x+1
print('f1(2):',f1(2)) f2=lambda :'a'
print('f2(2):',f2()) #输出
#f1(2): 3
#f2(): a
tuple_r_dict = lambda _dict: dict(val[::-1] for val in _dict.items())
这句表明创建一个匿名函数
输入:_dict
输出:dict(val[::-1] for val in _dict.items())
2、 dict()
dict()生成一个字典
3、 _dict.items()
dict.items()返回字典的(键,值)元组对的列表
dic={7:'d',9:'s',5:'a'}
print('dic:',dic)
print('dic.items():',dic.items()) #输出
#dic: {9: 's', 5: 'a', 7: 'd'}
#dic.items(): dict_items([(9, 's'), (5, 'a'), (7, 'd')])
4、val[::-1]
把元组对顺序对调
(1,'A')[::-1] => ('A',1)
L[1,2,3,4,5][:4:2] => [1,3] #取列表中的前4个数,步长为2//第一个冒号左右两边代表在这个列表中的截取范围,第二个冒号右边代表截取范围内每2个取一个数
总结:
生成一个匿名函数,函数返回一个字典dict(val[::-1] for val in _dict.items())
_dict.items()先返回原字典的(键,值)元组对列表
val[::-1] for val in _dict.items() 遍历列表,把列表中的每个元组对中两个值位置对调
dict()把列表转变为字典
至此,生成的新字典的键为旧字典的键值,新键值为旧字典的键。利用字典的键唯一性,去除旧字典的重复键值。
再执行一次tuple_r_dict(tuple_r_dict(z)),把键值对再对调回来
python 字典中 重复值去除的更多相关文章
- Python字典中的值为列表或字典的构造方法
转自: https://blog.csdn.net/buside/article/details/81323871 1.值为列表的构造方法 dic = {} dic.setdefault(key,[] ...
- JS去除数组中重复值的四种方法
JS去除数组中重复值的四种方法 1 /// <summary> o[this[i]] = ""; } } newArr.p ...
- Remove Duplicates from Sorted List 去除链表中重复值节点
Given a sorted linked list, delete all duplicates such that each element appear only once. For examp ...
- Python访问、修改、删除字典中的值
Python访问字典中的值: # 使用字典 ['键'] 获取字典中的元素 dic = {'a':123,'b':456,'c':789} print(dic['a']) # print(dic['c' ...
- python字典改变value值方法总结
今天这篇文章中我们来了解一下python之中的字典,在这文章之中我会对python字典修改进行说明,以及举例说明如何修改python字典内的值.我们开始进入文章吧. 首先我们得知道什么是修改字典 修改 ...
- Python 字典(键值对)
Python 字典(键值对) 创建字典 特性:字典中的键不能变,而且唯一 格式:变量名={"键1":值1,"键2":值2} 函数 作用 dict() 强制转换为 ...
- 十四、python字典中的方法汇总
'''1.访问.修改,删除字典中的值:''' dict={'a':'11','b':'22','c':'33','d':'44'}print dict['a'],dict['d'] #访问dict[' ...
- 获取字典中values值中最大的数,返回对应的keys
1.字典中键值对的获取 print(data.values()) # 查看字典的值 print(data.keys()) # 查看字典的key 2.对字典中的值进行排序 sorted(data.val ...
- 判断python字典中key是否存在的两种方法
今天来说一下如何判断字典中是否存在某个key,一般有两种通用做法,下面为大家来分别讲解一下: 第一种方法:使用自带函数实现. 在python的字典的属性方法里面有一个has_key()方法,这个方法使 ...
随机推荐
- 二、JAVA基本数据类型:内置数据类型,引用类型
变量的值存储在内存中,内存管理系统通过变量的类型分配存储空间,且该空间只能存储该类型数据,通过定义不同的变量,在内存中储存不同类型的数据. JAVA的两大数据类型 1. 内置数据类型 2.引用数据类型 ...
- 《JavaScript Dom 编程艺术》读书笔记-第5章
上一篇随笔中记录了用JavaScript建一个基础图片库,但实际上还有很多地方可以改进.第五章将逐步进行改进,这一章里需要明白的道理是达到目标的过程和达到目标同样重要~ 第五章:最佳实践 5.1 过去 ...
- C语言里有没有像C++里面的sort函数一样的函数?有!
C 库函数 - qsort() 描述 C 库函数 void qsort(void *base, size_t nitems, size_t size, int (*compar)(const void ...
- less 查看日志
上下键,空格下一页,字母B上一页 ,字母Q退出,n(小写字母n)上一个关键字位置N(大写字母N)下一个关键词位置] 二.查找某个时间段的日志:比如查询2018-08-15 10:37:32到2018 ...
- mysql在查询中常见问题汇总
1.从主从表中查询外键内容(常见问题) 从主从表中查询对应的外键,需要指定外键的表,即sno=> student.sno或者score.sno 错误:select sno,sname,degre ...
- 指向函数的指针 ------ 函数指针(function pointer)
函数指针: 指向函数的指针, 首先是一个指针, 这个指针指向一个函数. 函数具有可赋值给指针的物理内存地址,一个函数的函数名就是一个指针,它指向函数的代码.一个函数的地址是该函数的进入点,也是调用函数 ...
- 神州数码多区域OSPF配置
实验要求:掌握多区域OSPF配置 拓扑如下 R1 enable 进入特权模式 config 进入全局模式 hostname R1 修改名称 interface s0/1 进入端口 ip address ...
- java.io.IOException: Could not delete path 'D:\mycode\reactnative\SecondTest\android\app\build\generated\source\r \release\android\support\v7
问题解决 直观上看是没有删除某个文件,产生的IOException异常,实际上是因为上次编译导致的缓存没有清空导致的. 进入到android目录下运行下面代码清除上次打包时的缓存: ./gradlew ...
- Python之小练习
1.1 2 3 4 5 6 7 8能组成多少个不同的两位数? count = 0for i in range(1,9): for V in range(1,9): if i != V: count+= ...
- PTA——洗牌
PTA 7-43 Shuffling Machine #include<stdio.h> int main() { int i,n,*result; scanf("%d" ...