python按照list中字典的某key去重的示例代码


Posted in Python onOctober 13, 2020

一、需求说明

当我们写爬虫的时候,经常会遇到json格式的数据,它通常是如下结构:

data = [{'name':'小K','score':100},
    {'name':'小J','score':98},
    {'name':'小Q','score':95},
    {'name':'小K','score':100}]

很显然名字为小K的数据重复了,我们需要进行去重。通常对于list的去重,我们可以用set()函数,即:

data = list(set(data))

然而,运行之后你会发现它报错了:

python按照list中字典的某key去重的示例代码

list里的数据不能是dict类型,那么该怎么办呢?

二、我的解决方案

定义一个去重的函数即可,根据里面的某个key,对数据进行筛选去重:

def DelRepeat(data,key):
  new_data = [] # 用于存储去重后的list
  values = []  # 用于存储当前已有的值
  for d in data:
    if d[key] not in values:
      new_data.append(d)
      values.append(d[key])
  return new_data

参数data为需要去重的list,key为去重的健(即按照哪个key来去重),去重后结果为:

[{'name': '小K', 'score': 100},
 {'name': '小J', 'score': 98},
 {'name': '小Q', 'score': 95}]

成功去重!

到此这篇关于python按照list中字典的某key去重的示例代码的文章就介绍到这了,更多相关python list字典的某key去重内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木! 

Python 相关文章推荐
Python中random模块生成随机数详解
Mar 10 Python
详解Python中如何写控制台进度条的整理
Mar 07 Python
Python基础教程之利用期物处理并发
Mar 29 Python
Python(Django)项目与Apache的管理交互的方法
May 16 Python
如何在Django中使用聚合的实现示例
Mar 23 Python
Python GUI编程学习笔记之tkinter事件绑定操作详解
Mar 30 Python
pip install 使用国内镜像的方法示例
Apr 03 Python
Python sklearn中的.fit与.predict的用法说明
Jun 28 Python
提高python代码运行效率的一些建议
Sep 29 Python
Python快速优雅的批量修改Word文档样式
May 20 Python
FP-growth算法发现频繁项集——构建FP树
Jun 24 Python
Python进程池与进程锁之语法学习
Apr 11 Python
Python importlib模块重载使用方法详解
Oct 13 #Python
Pycharm添加虚拟解释器报错问题解决方案
Oct 13 #Python
Python本地及虚拟解释器配置过程解析
Oct 13 #Python
Pycharm快捷键配置详细整理
Oct 13 #Python
Django项目创建及管理实现流程详解
Oct 13 #Python
OpenCV读取与写入图片的实现
Oct 13 #Python
Django Form常用功能及代码示例
Oct 13 #Python
You might like
全国FM电台频率大全 - 6 辽宁省
2020/03/11 无线电
php利用cookie实现访问次数统计代码
2011/05/19 PHP
php源代码安装常见错误与解决办法分享
2013/05/28 PHP
javascript 混合的构造函数和原型方式,动态原型方式
2009/12/07 Javascript
jQuery生成asp.net服务器控件的代码
2010/02/04 Javascript
js两行代码按指定格式输出日期时间
2011/10/21 Javascript
封装了jQuery的Ajax请求全局配置
2015/02/05 Javascript
javascript中函数作为参数调用的方法
2015/02/09 Javascript
jQuery编程中的一些核心方法简介
2015/08/14 Javascript
jQuery实现TAB风格的全国省份城市滑动切换效果代码
2015/08/24 Javascript
jQuery插件实现适用于移动端的地址选择器
2016/02/18 Javascript
jQuery.uploadify文件上传组件实例讲解
2016/09/23 Javascript
JS给Array添加是否包含字符串的简单方法
2016/10/29 Javascript
DWR3 访问WEB元素的两种方法实例详解
2017/01/03 Javascript
javascript判断回文数详解及实现代码
2017/02/03 Javascript
Node实战之不同环境下配置文件使用教程
2018/01/02 Javascript
JS点击动态添加标签、删除指定标签的代码
2018/04/18 Javascript
在vue项目中使用Jquery-contextmenu插件的步骤讲解
2019/01/27 jQuery
微信小程序基于canvas渐变实现的彩虹效果示例
2019/05/03 Javascript
微信小程序Echarts图表组件使用方法详解
2019/06/25 Javascript
Python实现豆瓣图片下载的方法
2015/05/25 Python
Python实现简单求解给定整数的质因数算法示例
2018/03/25 Python
基于Python实现定时自动给微信好友发送天气预报
2018/10/25 Python
在Python中关于使用os模块遍历目录的实现方法
2019/01/03 Python
Django项目后台不挂断运行的方法
2019/08/31 Python
Python实现动态给类和对象添加属性和方法操作示例
2020/02/29 Python
解决Python Matplotlib绘图数据点位置错乱问题
2020/05/16 Python
在pycharm中debug 实时查看数据操作(交互式)
2020/06/09 Python
美国餐厅用品和厨房设备批发网站:KaTom Restaurant Supply
2018/01/27 全球购物
英国Radley包德国官网:Radley London德国
2019/11/18 全球购物
生日寄语大全
2014/04/08 职场文书
2015学习委员工作总结范文
2015/04/03 职场文书
2016年社区“6.26”禁毒日宣传活动总结
2016/04/05 职场文书
python 实现定时任务的四种方式
2021/04/01 Python
Python集合的基础操作
2021/11/01 Python
Elasticsearch 基本查询和组合查询
2022/04/19 Python