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多线程下的变量问题
Apr 28 Python
Python2.x版本中maketrans()方法的使用介绍
May 19 Python
20个常用Python运维库和模块
Feb 12 Python
django 开发忘记密码通过邮箱找回功能示例
Apr 17 Python
python更改已存在excel文件的方法
May 03 Python
Python中的上下文管理器相关知识详解
Sep 19 Python
TensorFlow2.0矩阵与向量的加减乘实例
Feb 07 Python
解决jupyter运行pyqt代码内核重启的问题
Apr 16 Python
python异步Web框架sanic的实现
Apr 27 Python
python实现mask矩阵示例(根据列表所给元素)
Jul 30 Python
python图像处理 PIL Image操作实例
Apr 09 Python
Python+Selenium实现抖音、快手、B站、小红书、微视、百度好看视频、西瓜视频、微信视频号、搜狐视频、一点号、大风号、趣头条等短视频自动发布
Apr 13 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
同台服务器使用缓存APC效率高于Memcached的演示代码
2010/02/16 PHP
php入门学习知识点三 PHP上传
2011/07/14 PHP
Linux Apache PHP Oracle 安装配置(具体操作步骤)
2013/06/17 PHP
php常量详细解析
2015/10/27 PHP
thinkphp项目如何自定义微信分享描述内容
2017/02/20 PHP
Javascript的IE和Firefox兼容性汇编
2006/07/01 Javascript
JavaScript 事件冒泡简介及应用
2010/01/11 Javascript
juqery 学习之三 选择器 可见性 元素属性
2010/11/25 Javascript
整理一些JavaScript的IE和火狐的兼容性注意事项
2011/03/17 Javascript
基于JQuery实现CheckBox全选全不选
2011/06/27 Javascript
JavaScript简单实现网页回到顶部功能
2013/11/12 Javascript
DIV始终居中的js代码
2014/02/17 Javascript
javascript白色简洁计算器
2015/05/04 Javascript
在WordPress中加入Google搜索功能的简单步骤讲解
2016/01/04 Javascript
js+canvas简单绘制圆圈的方法
2016/01/28 Javascript
JavaScript使用表单元素验证表单的示例代码
2019/08/20 Javascript
vue图片上传组件使用详解
2019/12/23 Javascript
JS面向对象编程基础篇(一) 对象和构造函数实例详解
2020/03/03 Javascript
解决iview table组件里的 固定列 表格不自适应的问题
2020/11/13 Javascript
利用JavaScript模拟京东按键输入功能
2020/12/01 Javascript
[03:03]2014DOTA2国际邀请赛 EG战队专访
2014/07/12 DOTA
Python基于回溯法解决01背包问题实例
2017/12/06 Python
flask框架路由常用定义方式总结
2019/07/23 Python
FFrpc python客户端lib使用解析
2019/08/24 Python
Python实现的爬取豆瓣电影信息功能案例
2019/09/15 Python
python 等差数列末项计算方式
2020/05/03 Python
浅谈Python里面None True False之间的区别
2020/07/09 Python
无惧面试,带你搞懂python 装饰器
2020/08/17 Python
在 Python 中使用 MQTT的方法
2020/08/18 Python
python环境搭建和pycharm的安装配置及汉化详细教程(零基础小白版)
2020/08/19 Python
德国隐形眼镜店:LuckyLens
2018/07/29 全球购物
Fanatics法国官网:美国体育电商
2019/08/27 全球购物
在Ajax应用中信息是如何在浏览器和服务器之间传递的
2016/05/31 面试题
求职信标题怎么写
2014/05/26 职场文书
谢师宴邀请函
2015/02/02 职场文书
稽核岗位职责范本
2015/04/13 职场文书