网络编程
位置:首页>> 网络编程>> Python编程>> Python实现嵌套列表及字典并按某一元素去重复功能示例

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

作者:爱橙子的OK绷  发布时间:2023-02-22 10:44:05 

标签:Python,列表,字典,去重复

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

PS:本站还有两款比较简单实用的在线文本去重复工具,推荐给大家使用:

在线去除重复项工具:
http://tools.jb51.net/code/quchong

在线文本去重复工具:
http://tools.jb51.net/aideddesign/txt_quchong

希望本文所述对大家Python程序设计有所帮助。

来源:http://blog.csdn.net/will130/article/details/50441937

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com