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程序设计入门(2)变量类型简介
Jun 16 Python
零基础写python爬虫之使用Scrapy框架编写爬虫
Nov 07 Python
python实现数值积分的Simpson方法实例分析
Jun 05 Python
详细介绍Python的鸭子类型
Sep 12 Python
python写入已存在的excel数据实例
May 03 Python
python/sympy求解矩阵方程的方法
Nov 08 Python
python之cv2与图像的载入、显示和保存实例
Dec 05 Python
python处理两种分隔符的数据集方法
Dec 12 Python
python实现word文档批量转成自定义格式的excel文档的思路及实例代码
Feb 21 Python
解决Python中导入自己写的类,被划红线,但不影响执行的问题
Jul 13 Python
浅析Python中字符串的intern机制
Oct 03 Python
Matplotlib animation模块实现动态图
Feb 25 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
不用数据库的多用户文件自由上传投票系统(3)
2006/10/09 PHP
火车头discuz6.1 完美采集的php接口文件
2009/09/13 PHP
PHP+mysql实现的三级联动菜单功能示例
2019/02/15 PHP
Yii2框架中一些折磨人的坑
2019/12/15 PHP
JavaScript 设计模式学习 Factory
2009/07/29 Javascript
extjs 列表框(multiselect)的动态添加列表项的方法
2009/07/31 Javascript
浅谈javascript 面向对象编程
2009/10/28 Javascript
JQuery Tips(2) 关于$()包装集你不知道的
2009/12/14 Javascript
Javascript异步表单提交,图片上传,兼容异步模拟ajax技术
2010/05/10 Javascript
再次分享18个非常棒的jQuery表格插件
2011/04/10 Javascript
目前流行的JavaScript库的介绍及对比
2013/09/29 Javascript
nodejs之请求路由概述
2014/07/05 NodeJs
分享10个原生JavaScript技巧
2015/04/20 Javascript
jQuery对html元素的取值与赋值实例详解
2015/12/18 Javascript
举例讲解jQuery对DOM元素的向上遍历、向下遍历和水平遍历
2016/07/07 Javascript
激动人心的 Angular HttpClient的源码解析
2017/07/10 Javascript
深入浅出webpack之externals的使用
2017/12/04 Javascript
详解基于Vue cli生成的Vue项目的webpack4升级
2018/06/19 Javascript
jQuery.parseJSON()函数详解
2019/02/28 jQuery
微信小程序的注册页面包含倒计时验证码、获取用户信息
2019/05/22 Javascript
Vue+ElementUI使用vue-pdf实现预览功能
2019/11/26 Javascript
VSCode写vue项目一键生成.vue模版,修改定义其他模板的方法
2020/04/17 Javascript
vue+koa2搭建mock数据环境的详细教程
2020/05/18 Javascript
[13:25]VP vs VICI (BO3)
2018/06/07 DOTA
python操作MySQL数据库的方法分享
2012/05/29 Python
python处理multipart/form-data的请求方法
2018/12/26 Python
Python 实现王者荣耀中的敏感词过滤示例
2019/01/21 Python
pandas 按日期范围筛选数据的实现
2021/02/20 Python
教师节促销活动方案
2014/02/14 职场文书
厨师长岗位职责
2014/03/02 职场文书
小学生安全责任书
2014/07/25 职场文书
中队活动总结
2014/08/27 职场文书
2015年元旦联欢晚会活动总结
2014/11/28 职场文书
甲午大海战观后感
2015/06/02 职场文书
Feign调用传输文件异常的解决
2021/06/24 Java/Android
MongoDB数据库之添删改查
2022/04/26 MongoDB