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使用文件锁实现进程间同步功能【基于fcntl模块】
Oct 16 Python
简述:我为什么选择Python而不是Matlab和R语言
Nov 14 Python
python实现跨excel的工作表sheet之间的复制方法
May 03 Python
使用Python实现一个栈判断括号是否平衡
Aug 23 Python
pycharm重置设置,恢复默认设置的方法
Oct 22 Python
关于python下cv.waitKey无响应的原因及解决方法
Jan 10 Python
Python jieba库用法及实例解析
Nov 04 Python
Django框架表单操作实例分析
Nov 04 Python
基于Python3读写INI配置文件过程解析
Jul 23 Python
Python如何设置指定窗口为前台活动窗口
Aug 12 Python
django有哪些好处和优点
Sep 01 Python
用python自动生成日历
Apr 24 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实现百度网盘图片直链的代码分享
2012/11/01 PHP
thinkPHP的Html模板标签使用方法
2012/11/13 PHP
PHP 伪静态技术原理以及突破原理实现介绍
2013/07/12 PHP
Yii把CGridView文本框换成下拉框的方法
2014/12/03 PHP
PHP实现求连续子数组最大和问题2种解决方法
2017/12/26 PHP
用Jquery重写windows.alert方法实现思路
2013/04/03 Javascript
jquery 模板的应用示例
2013/11/12 Javascript
jQery使网页在显示器上居中显示适用于任何分辨率
2014/06/09 Javascript
通过js为元素添加多项样式,浏览器全兼容写法
2014/08/30 Javascript
详解JavaScript的闭包、IIFE、apply、函数与对象
2016/12/21 Javascript
超全面的JavaScript开发规范(推荐)
2017/01/21 Javascript
jQuery EasyUI ProgressBar进度条组件
2017/02/28 Javascript
JS实现Cookie读、写、删除操作工具类示例
2018/08/28 Javascript
详解NodeJS Https HSM双向认证实现
2019/03/12 NodeJs
ES6 Set结构的应用实例分析
2019/06/26 Javascript
js实现随机点名程序
2020/09/17 Javascript
微信小程序实现多选框全选与反全选及购物车中删除选中的商品功能
2019/12/17 Javascript
Vue使用自定义指令实现拖拽行为实例分析
2020/06/06 Javascript
使用jQuery实现购物车
2020/10/29 jQuery
python实现基于两张图片生成圆角图标效果的方法
2015/03/26 Python
在Python的一段程序中如何使用多次事件循环详解
2017/09/07 Python
tornado 多进程模式解析
2018/01/15 Python
15行Python代码带你轻松理解令牌桶算法
2018/03/21 Python
对python中的pop函数和append函数详解
2018/05/04 Python
python使用beautifulsoup4爬取酷狗音乐代码实例
2019/12/04 Python
Python转换itertools.chain对象为数组的方法
2020/02/07 Python
Python3操作MongoDB增册改查等方法详解
2020/02/10 Python
webView加载html图片遇到的问题解决
2019/10/08 HTML / CSS
利物浦足球俱乐部官方商店(美国):Liverpool FC US
2019/10/09 全球购物
SQL Server 2000数据库的文件有哪些,分别进行描述。
2015/11/09 面试题
好的自荐信的要求
2013/10/30 职场文书
婚庆公司的创业计划书
2014/01/22 职场文书
银行青年文明号事迹材料
2014/05/31 职场文书
青年标兵事迹材料
2014/08/16 职场文书
公司规章制度范本
2015/08/03 职场文书
珍惜时间的诗歌赏析
2019/08/23 职场文书