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()方法,这个方法使 ...
随机推荐
- C#手动改变自制窗体的大小
Form1.cs using System;using System.Collections.Generic;using System.ComponentModel;using System.Data ...
- disjoint set
MAKE-SET.x/ creates a new set whose only member (and thus representative) is x. Since the sets are d ...
- 返回指针的函数 ------ 指针函数(pointer function)
指针函数: 其本质是一个函数, 其函数返回值为某一类型的指针. 定义形式: 类型 *指针变量名(参数列表): 例如: int *p(int i,int j); p是一个函数名,该函数有2个整形参数,返 ...
- Python全栈之路---数据类型—字符串
字符串:有序的字符的集合,用于存储和表示基本的文本信息,一对单.双.或三引号中间包含的内容称之为字符串 1.特性:有序,不可变(开辟新地址存储字符串,python解释器会定期清空不用了的已存储的) & ...
- Linux 测试常用命令
ls :列出文件 ls -l ls -t 按时间排序 ls -rt 按时间倒序 ls -a 列出所有文件(包括隐藏的) ll : ll = ‘ls -l ’ cd: 进入文件目录 cd 不带目录名 ...
- day04列表
列表 内容详细 1.列表 公共 独有方法 删除 remove pop clear del区别 强制转换 #表示多个事物 users=["lili","Joe", ...
- 《Linux内核原理与分析》第八周作业
课本:第七章 可执行程序工作原理 ELF目标文件格式 目标文件:编译器生成的文件. 目标文件的格式:out格式.COFF格式.PE(windows)格式.ELF(Linux)格式. ELF(Execu ...
- 关于ava容器、队列,知识点总结
推荐<java 并发编程实战>这本书,中文的翻译有些差(哈哈,并发确实难,不好翻译),适合有并发经验的人来读. 这篇短文,整理了容器的知识点,对容器的使用场景,容器的原理等有个整体的认知! ...
- 全志A33 linux led驱动编程(附实测参考代码)
开发平台 * 芯灵思SinlinxA33开发板 淘宝店铺: https://sinlinx.taobao.com/ 嵌入式linux 开发板交流 QQ:641395230 开发平台 * 芯灵思Sinl ...
- WPF项目中解决ConfigurationManager不能用(转)
https://blog.csdn.net/MOESECSDN/article/details/78107888 在WPF项目中遇到这样的问题,做一下笔记.希望对自己和读者都有帮助. 在aap.con ...