shenzhang 发表于 2018-8-15 09:19:14

Python小练习之字典列表的转换及for循环

old_dict = {  
    "#1":{ 'hostname':'c1', 'cpu_count': 2, 'mem_capicity': 80 },
  
    "#2":{ 'hostname':'c1', 'cpu_count': 2, 'mem_capicity': 80 },
  
    "#3":{ 'hostname':'c1', 'cpu_count': 2, 'mem_capicity': 80 }
  
}
  

  
# 新的数据
  
new_dict = {
  
    "#1":{ 'hostname':'c1', 'cpu_count': 2, 'mem_capicity': 800 },
  
    "#3":{ 'hostname':'c1', 'cpu_count': 2, 'mem_capicity': 80 },
  
    "#4":{ 'hostname':'c2', 'cpu_count': 2, 'mem_capicity': 80 }
  
}
  

  
old_set = set(old_dict.keys())
  
update_list = list(old_set.intersection(new_dict.keys()))
  
for i in update_list:
  
   if cmp(old_dict,new_dict) != 0:
  
         update_list.remove(i)
  

  
#print update_list
  

  

  
new_list = []
  
del_list = []
  

  
for i in new_dict.keys():
  
    if i not in update_list:
  
      new_list.append(i)
  
for i in old_dict.keys():
  
    if i not in update_list:
  
      del_list.append(i)
  

  
print update_list
  
print new_list
  
print del_list
  
运行结果:
  
['#3']
  
['#1', '#4']
  
['#2', '#1']
  

  

  
本节使用了字典与列表的转换,列表移除某个值,for循环,cmp内置函数,if判断
页: [1]
查看完整版本: Python小练习之字典列表的转换及for循环