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 相关文章推荐
50行代码实现贪吃蛇(具体思路及代码)
Apr 27 Python
详解Django中的form库的使用
Jul 18 Python
python线程池threadpool使用篇
Apr 27 Python
python使用rpc框架gRPC的方法
Aug 24 Python
Python日期时间模块datetime详解与Python 日期时间的比较,计算实例代码
Sep 14 Python
win10下python3.5.2和tensorflow安装环境搭建教程
Sep 19 Python
使用Django连接Mysql数据库步骤
Jan 15 Python
Python StringIO如何在内存中读写str
Jan 07 Python
python实现银行实战系统
Feb 26 Python
Python日志logging模块功能与用法详解
Apr 09 Python
用60行代码实现Python自动抢微信红包
Feb 04 Python
python中print格式化输出的问题
Apr 16 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
php 数组的指针操作实现代码
2011/02/08 PHP
解析CodeIgniter自定义配置文件
2013/06/18 PHP
php遍历目录输出目录及其下的所有文件示例
2014/01/27 PHP
PHP中使用gettext解决国际化问题的例子(i18n)
2014/06/13 PHP
php定时执行任务设置详解
2015/02/06 PHP
Zend Framework校验器Zend_Validate用法详解
2016/12/09 PHP
laravel 验证错误信息到 blade模板的方法
2019/09/29 PHP
JQuery中使用Ajax赋值给全局变量失败异常的解决方法
2014/08/18 Javascript
Javascript冒泡排序算法详解
2014/12/03 Javascript
有效提高JavaScript执行效率的几点知识
2015/01/31 Javascript
jquery实现鼠标滑过小图查看大图的方法
2015/07/20 Javascript
js查看一个函数的执行时间实例代码
2015/09/12 Javascript
Jquery循环截取字符串的方法(多出的字符串处理成"...")
2016/11/28 Javascript
vue基于element-ui的三级CheckBox复选框功能的实现代码
2018/10/15 Javascript
vue 中使用 watch 出现了如下的报错的原因分析
2019/05/21 Javascript
vue 源码解析之虚拟Dom-render
2019/08/26 Javascript
js实现图片无缝循环轮播
2019/10/28 Javascript
原生JS实现无缝轮播图片
2020/06/24 Javascript
vue data对象重新赋值无效(未更改)的解决方式
2020/07/24 Javascript
从0到1学习JavaScript编写贪吃蛇游戏
2020/07/28 Javascript
python函数缺省值与引用学习笔记分享
2013/02/10 Python
Python数据类型详解(三)元祖:tuple
2016/05/08 Python
CentOS下使用yum安装python-pip失败的完美解决方法
2017/08/16 Python
python 实现tar文件压缩解压的实例详解
2017/08/20 Python
Pipenv一键搭建python虚拟环境的方法
2018/05/22 Python
Pytorch加载部分预训练模型的参数实例
2019/08/18 Python
python 进程的几种创建方式详解
2019/08/29 Python
美国知名的家庭连锁百货商店:Boscov’s
2017/07/27 全球购物
英国派对礼服和连衣裙购物网站:TFNC London
2018/07/07 全球购物
介绍一下Java中的Class类
2015/04/10 面试题
自我评价格式
2014/01/06 职场文书
护士试用期自我鉴定
2014/02/08 职场文书
大学生党员承诺书
2014/05/20 职场文书
2016继续教育培训学习心得体会
2016/01/19 职场文书
导游词之清晏园
2019/11/22 职场文书
python中opencv实现图片文本倾斜校正
2021/06/11 Python