python按照list中字典的某key去重的示例代码
作者:不正经的kimol君 发布时间:2023-01-20 00:20:00
标签:python,list,字典,key,去重
一、需求说明
当我们写爬虫的时候,经常会遇到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))
然而,运行之后你会发现它报错了:
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}]
成功去重!
来源:https://blog.csdn.net/kimol_justdo/article/details/108986749


猜你喜欢
- 如果你从来没有使用过Python,我强烈建议你阅读Python introduction,因为你需要知道基本的语法和类型。包管理Python
- ISNULL 使用指定的替换值替换 NULL。 &nb
- 1 项目背景1.1Python的优势Python有成熟的程序包资源库和活跃的社区 Python以PYPI为技术支撑,资源丰富,可被灵活调用。
- 如今,随着网站的越来越普及,与Web相关的开发技术持续热门,从前端到后端,从标记语言到开发语言,各种技术交相辉映,沉沉浮浮,从开始简单的ht
- 引言第一次了解python的WSGI,可能描述的不太准确。本篇文章所依赖的python环境为:什么是WSGIWSGI也称之为web服务器通用
- 前言这篇文章算是对Building APIs with Node.js这本书的一个总结。用Node.js写接口对我来说是很有用的,比如在项目
- 前言超参调优是“模型调优”(Model Tuning)阶段最主要的工作,是直接影响模型最终效果的关键
- mysql-5.6.14-win32为免安装解压缩版,安装版(http://dev.mysql.com/downloads/installe
- 文件夹的复制文件夹复制使用的函数导入包与模块`from shutil import copytree使用方法:copytree(来源目录,
- mysql 8.0.20 安装配置方法图文教程整理下,供大家参考。一、准备工作1、检查是否已经安装mysql当前计算机没有安装mysql。2
- 如何查看MySQL初始密码问题在安装MySQL过程中,以管理员身份运行cmd后进入MySQL的bin目录,然后输入命令“
- 运行截图运行效果:什么?你说你看不清烟花?那我换一种颜色,请点开看。实现过程准备工作使用语言和框架:python、pygame。安装pyga
- 为了安全我们经常给access数据库加上密码,这样就算让本人下载了数据库,那么想看到数据库中的数据也不是那么简单的,起码多了一层障碍!我们平
- 代码如下: Function NumberSplit(num) Dim i,length length=Len(num) For i=1 T
- 数据库操作类在网上一搜一大把,我这并不比那些好,只是是自己写的,用着更习惯。所以我这个类没有什么特别的地方,只是自己用着习惯罢了,至于效率等
- 使用的类库pip install openpyxl操作实现•工作簿操作# coding: utf-8from openpyxl import
- app01/models.py:from django.db import modelsclass UserInfo(models.Mode
- 前言:open()函数的定义:def open(file, mode='r', buffering=None, encodi
- 引言:我们在页面上会看到,谁登录的就会显示谁的信息,那么这个页面上的变量信息是怎样实现的呢?这就是本文要讲述的内容——Django中的模板变
- 记录三种添加cookie保持接口登录状态的方法,方便自己回顾。1.简单粗暴式。此方法比较小白,前提是已经通过fiddler抓包等方式拿到了c