Python实现嵌套列表及字典并按某一元素去重复功能示例


Posted in Python onNovember 30, 2017

本文实例讲述了Python实现嵌套列表及字典并按某一元素去重复功能。分享给大家供大家参考,具体如下:

#! /usr/bin/env python
#coding=utf-8
class HostScheduler(object):
  def __init__(self, resource_list):
    self.resource_list = resource_list
  def MergeHost(self):
    allResource=[]
    allResource.append(self.resource_list[0])
    for dict in self.resource_list:
      #print len(l4)
      k=0
      for item in allResource:
        #print 'item'
        if dict['host'] != item['host']:
          k=k+1
          #continue
        else:
          break
        if k == len(allResource):
          allResource.append(dict)
    taskhost=[]
    for item in allResource:
      taskhost.append(item['host'])
    return taskhost
#该函数实现嵌套列表中,按某一元素去重复
def deleteRepeat():
  #1、列表中嵌套列表。按元素‘b'实现去重复
  l1=[['b',1],['b',2],['c',3],['a',1],['b',1],['b',1],]
  l2=[]
  l2.append(l1[0])
  for data in l1:
    #print len(l2)
    k=0
    for item in l2:
      #print 'item'
      if data[0] != item[0]:
        k=k+1
      else:
        break
      if k == len(l2):
        l2.append(data)
  print "l2: ",l2
  #2、列表中嵌套字典。按键值host实现去重复
  l3=[{'host':'compute21', 'cpu':2},{'host':'compute21', 'cpu':2},{'host':'compute22', 'cpu':2},
    {'host':'compute23', 'cpu':2},{'host':'compute22', 'cpu':2},{'host':'compute23', 'cpu':2},
    {'host':'compute24', 'cpu':2}]
  l4=[]
  l4.append(l3[0])
  for dict in l3:
    #print len(l4)
    k=0
    for item in l4:
      #print 'item'
      if dict['host'] != item['host']:
        k=k+1
        #continue
      else:
        break
      if k == len(l4):
        l4.append(dict)
  print "l4: ",l4
if __name__ == '__main__':
  #deleteRepeat()
  resource_list=[{'host':'compute21', 'cpu':2},{'host':'compute21', 'cpu':2},{'host':'compute22', 'cpu':2},
          {'host':'compute23', 'cpu':2},{'host':'compute22', 'cpu':2},{'host':'compute23', 'cpu':2},
          {'host':'compute24', 'cpu':2}]
  hostSchedule=HostScheduler(resource_list)
  taskhost=hostSchedule.MergeHost()
  print '三水点靠木测试结果: '
  print 'taskhost: '
  print taskhost

运行结果:

Python实现嵌套列表及字典并按某一元素去重复功能示例

Python 相关文章推荐
python爬取网站数据保存使用的方法
Nov 20 Python
python冒泡排序算法的实现代码
Nov 21 Python
举例讲解Python中的迭代器、生成器与列表解析用法
Mar 20 Python
Python中字典(dict)合并的四种方法总结
Aug 10 Python
Python实现文件内容批量追加的方法示例
Aug 29 Python
Python paramiko模块的使用示例
Apr 11 Python
Python模拟登录的多种方法(四种)
Jun 01 Python
Python实现的tcp端口检测操作示例
Jul 24 Python
Python 实现王者荣耀中的敏感词过滤示例
Jan 21 Python
PyTorch中permute的用法详解
Dec 30 Python
Python 随机生成测试数据的模块:faker基本使用方法详解
Apr 09 Python
python基于tkinter实现gif录屏功能
May 19 Python
Python实现的多线程同步与互斥锁功能示例
Nov 30 #Python
Python实现按特定格式对文件进行读写的方法示例
Nov 30 #Python
[原创]教女朋友学Python3(二)简单的输入输出及内置函数查看
Nov 30 #Python
Python爬虫实现爬取京东手机页面的图片(实例代码)
Nov 30 #Python
Python编程使用tkinter模块实现计算器软件完整代码示例
Nov 29 #Python
Python科学画图代码分享
Nov 29 #Python
Python中Scrapy爬虫图片处理详解
Nov 29 #Python
You might like
PHP 文件上传全攻略
2010/04/28 PHP
PHP向浏览器输出内容的4个函数总结
2014/11/17 PHP
PHP中substr_count()函数获取子字符串出现次数的方法
2016/01/07 PHP
php socket通信简单实现
2016/11/18 PHP
删除重复数据的算法
2006/11/23 Javascript
javascript 面向对象编程基础:封装
2009/08/21 Javascript
JavaScript插件化开发教程(六)
2015/02/01 Javascript
js 获取元素在页面上的偏移量的方法汇总
2015/04/13 Javascript
解决JavaScript数字精度丢失问题的方法
2015/12/03 Javascript
javascript 判断是否是微信浏览器的方法
2016/10/09 Javascript
bootstrap的工具提示实例代码
2017/05/17 Javascript
通过命令行创建vue项目的方法
2017/07/20 Javascript
探秘vue-rx 2.0(推荐)
2018/09/21 Javascript
nodejs脚本centos开机启动实操方法
2020/03/04 NodeJs
JavaScript/TypeScript 实现并发请求控制的示例代码
2021/01/18 Javascript
[01:14]辉夜杯战队访谈宣传片—NEWBEE.Y
2015/12/26 DOTA
[45:16]完美世界DOTA2联赛PWL S3 Magma vs Phoenix 第一场 12.12
2020/12/16 DOTA
用Python编写分析Python程序性能的工具的教程
2015/04/01 Python
Python爬虫实战:分析《战狼2》豆瓣影评
2018/03/26 Python
python中reader的next用法
2018/07/24 Python
pygame游戏之旅 创建游戏窗口界面
2018/11/20 Python
详解Python 解压缩文件
2019/04/09 Python
python 写函数在一定条件下需要调用自身时的写法说明
2020/06/01 Python
PyInstaller的安装和使用的详细步骤
2020/06/02 Python
keras-siamese用自己的数据集实现详解
2020/06/10 Python
使用phonegap操作数据库的实现方法
2017/03/31 HTML / CSS
当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
2014/09/09 面试题
毕业生找工作的求职信范文
2013/12/24 职场文书
违反学校规定检讨书
2014/01/18 职场文书
大学生就业自荐书
2014/06/16 职场文书
公司股份转让协议书范本
2015/01/28 职场文书
经费申请报告范文
2015/05/18 职场文书
2015年教师见习期工作总结
2015/05/20 职场文书
高温慰问简报
2015/07/21 职场文书
2019森林防火宣传标语大全!
2019/07/03 职场文书
Python selenium绕过webdriver监测执行javascript
2022/04/12 Python