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使用urllib模块开发的多线程豆瓣小站mp3下载器
Jan 16 Python
在python中的socket模块使用代理实例
May 29 Python
Python+PIL实现支付宝AR红包
Feb 09 Python
Numpy掩码式数组详解
Apr 17 Python
Python基于多线程实现抓取数据存入数据库的方法
Jun 22 Python
Python实现模拟登录网易邮箱的方法示例
Jul 05 Python
使用python对excle和json互相转换的示例
Oct 23 Python
Python实现爬取亚马逊数据并打印出Excel文件操作示例
May 16 Python
Django 限制访问频率的思路详解
Dec 24 Python
tensorflow 实现自定义layer并添加到计算图中
Feb 04 Python
python实现图像拼接
Mar 05 Python
一篇文章搞懂python的转义字符及用法
Sep 03 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
支持oicq头像的留言簿(一)
2006/10/09 PHP
第三章 php操作符与控制结构代码
2011/12/30 PHP
PHP+Jquery与ajax相结合实现下拉淡出瀑布流效果【无需插件】
2016/05/06 PHP
PHP addcslashes()函数讲解
2019/02/03 PHP
复制本贴标题和地址的js代码
2008/07/01 Javascript
JavaScript 权威指南(第四版) 读书笔记
2009/08/11 Javascript
js通过地址栏给action传值(中文乱码全是问号)
2013/05/02 Javascript
javascript获取设置div的高度和宽度兼容任何浏览器
2013/09/22 Javascript
JQuery 实现在同一页面锚点链接之间的平滑滚动
2014/10/29 Javascript
js随机生成网页背景颜色的方法
2015/02/26 Javascript
Javascript实现颜色rgb与16进制转换的方法
2015/04/18 Javascript
基于javascript实现listbox左右移动
2016/01/29 Javascript
Servlet实现文件上传,可多文件上传示例
2016/12/05 Javascript
详解NODEJS基于FFMPEG视频推流测试
2017/11/17 NodeJs
详解Vue Elememt-UI构建管理后台
2018/02/27 Javascript
JS实现鼠标拖拽盒子移动及右键点击盒子消失效果示例
2019/01/29 Javascript
js实现图片3D轮播效果
2019/09/21 Javascript
vue之a-table中实现清空选中的数据
2019/11/07 Javascript
JavaScript实现拖拽效果
2020/03/16 Javascript
Python读取Json字典写入Excel表格的方法
2018/01/03 Python
python实现贪吃蛇小游戏
2020/03/21 Python
详解python3 + Scrapy爬虫学习之创建项目
2019/04/12 Python
Python OpenCV实现视频分帧
2019/06/01 Python
Python嵌套函数,作用域与偏函数用法实例分析
2019/12/26 Python
tensorflow实现对张量数据的切片操作方式
2020/01/19 Python
Python3+Selenium+Chrome实现自动填写WPS表单
2020/02/12 Python
python上传时包含boundary时的解决方法
2020/04/08 Python
python实现sm2和sm4国密(国家商用密码)算法的示例
2020/09/26 Python
奥地利时尚、美容、玩具和家居之家:Kastner & Öhler
2020/04/26 全球购物
如何唤起类中的一个方法
2013/11/29 面试题
js正则匹配markdown里的图片标签的实现
2021/03/24 Javascript
生产部主管岗位职责
2014/01/06 职场文书
数控技校生自我鉴定
2014/03/02 职场文书
《少年王勃》教学反思
2014/04/27 职场文书
pytorch fine-tune 预训练的模型操作
2021/06/03 Python
win11怎么用快捷键锁屏? windows11锁屏的几种方法
2021/11/21 数码科技