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

来源:脚本之家  责任编辑:小易  

b = {}for dic in [each.items() for each in a]:    for key,value in dic:        b[key] = value本回答被提问者和网友采纳,100个元素根据什么去重?追问根据关键字和键值一起去重,就像我的问题里举的例子,a列表包含两个字典形式的元素,这两个元素都包含"B133D": 1和"制动信号灯": 20,a的两个元素去完重复后,就得到了b谢啦,我自己弄明白了,用lambda函数就可以www.zgxue.com防采集请勿采集本网。

一、需求说明

只能用索引切片的方式 如根据索引对data进行删除重复行,并保留第一个数据: data_unique = data[~data.index.duplicated()]

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

Python数字列表去重,还能按原来的顺序输出. 第一种方法 alist = [1, 2, 2, 4, 4, 6, 7] b = [] for i in alist: if i not in b: b.append(i) print(b) 源代码(注意源代码的缩进) 第二种方法 alist = [1, 2, 2, 4, 4, 6, 7] formatList = list(se

python的速度效率是不高的,如何对速度要求比较高的话建议可以用c来写。 我写了这个代码,python2.6+windows xp测试通过。 希望能帮到你~ =================================================== a=[] #初始化要用到的列表a,用于记录原始行信息

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

list(set((1,2,1,4,2,3)))您这样已经是一行了啊

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

今天笔者想对pandas中的行进行去重操作,找了好久,才找到相关的函数 先看一个小例子 [python] view plain copy from pandas import Series, DataFrame data = DataFrame({'k': [1, 1, 2, 2]}) print data IsDuplicated = data.duplicated() pri

python的速度效率是不高的,如何对速度要求比较高的话建议可以用c来写。 我写了这个代码,python2.6+windows xp测试通过。 希望能帮到你~ =================================================== a=[] #初始化要用到的列表a,用于记录原始行信息

data = list(set(data))

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

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

二、我的解决方案

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

python的速度效率是不高的,如何对速度要求比较高的话建议可以用c来写。 我写了这个代码,python2.6+windows xp测试通过。 希望能帮到你~ =================================================== a=[] #初始化要用到的列表a,用于记录原始行信息

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实现嵌套列表及字典并按某一元素去重复功能示例

按照制你的要求编写的字典2113内相同key合并的Python程序5261如下4102l=[{'a':1,'b':'haha'},{'a':3,'b':'haha'},{'a':2,'b':'xiaoming'}]result=[]temp=[]for i in range(len(l)):flag=Falsesuma=l[i]['a']b=l[i]['b']for j in range(i+1,len(l)):1653if l[i]['b']==l[j]['b'] and (j not in temp):flag=Truetemp.append(i)temp.append(j)suma=suma+l[j]['a']if i not in temp or flag==True:result.append({'a':suma,'b':b})print(result)源代码(注意源代码的缩进)内容来自www.zgxue.com请勿采集。


  • 本文相关:
  • django queryset相加和筛选教程
  • 打印出python 当前全局变量和入口参数的所有属性
  • python过滤txt文件内重复内容的方法
  • python安装scipy的方法步骤
  • python面向对象之类和对象实例详解
  • python处理excel绘制雷达图
  • pycharm 使用心得(七)一些实用功能介绍
  • pygame实现俄罗斯方块游戏(对战篇1)
  • pycharm设置ipython交互环境和宏快捷键进行数据分析图文详解
  • python django 访问静态文件出现404或500错误
  • python如何实现列表嵌套字典,字典内相同key去重,...
  • python列表里的字典元素合并去重
  • python如何删除list里重复的元素
  • python如何列表去重取最大值?
  • Python的pandas中,drop_duplicates函数怎么根据索...
  • Python数字列表去重,如何简单的既去重还能按原来...
  • python如何去除重复行并分别统计重复的行数?已有...
  • python 1行代码去除(1,2,1,4,2,3)中的重复元素? ...
  • python中怎么对dataframe列去重
  • python list 操作,我有一个list,但是里面有用的就5...
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全vbsdos/bathtahtcpythonperl游戏相关vba远程脚本coldfusionruby专题autoitseraphzonepowershelllinux shellluagolangerlang其它首页对python列表里的字典元素去重方法详解python实现嵌套列表及字典并按某一元素去重复功能示例django queryset相加和筛选教程打印出python 当前全局变量和入口参数的所有属性python过滤txt文件内重复内容的方法python安装scipy的方法步骤python面向对象之类和对象实例详解python处理excel绘制雷达图pycharm 使用心得(七)一些实用功能介绍pygame实现俄罗斯方块游戏(对战篇1)pycharm设置ipython交互环境和宏快捷键进行数据分析图文详解python django 访问静态文件出现404或500错误python入门教程 超详细1小时学会pycharm 2020最新永久激活码(附python 列表(list)操作方法详解python 元组(tuple)操作详解python 字典(dictionary)操作详解pycharm 使用心得(一)安装和首python strip()函数 介绍python 中文乱码问题深入分析python中使用xlrd、xlwt操作excepython逐行读取文件内容的三种方采用python实现简单qq单用户机器人的方法python中print的不换行即时输出的快速解决浅谈python 导入模块和解决文件句柄找不到python httplib模块使用实例用python3创建httpserver的简单方法python3文件复制、延迟文件复制任务的实现python中的with语句的使用及原理python抓取框架scrapy爬虫入门:页面提取python threading 线程/互斥锁/死锁/gil锁python操作小程序云数据库实现简单的增删
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved