#!/usr/bin/env python #-*- encoding:utf8 -*- # Author:lzf8989 # old_dict是原有的字典,new_dict是新获取到的。\ # 用python实现修改添加等操作。 old_dict = { "#1": 8, "#2": 4, "#4": 2, } new_dict = { "#1": 4, "#2": 4, "#3": 2, } # 把字典转换成集 old_set = set(old_dict.keys()) new_set = set(new_dict.keys()) # 获取需要添加、删除、修改的字段。 add_set = new_set.difference(old_set) del_set = old_set.difference(new_dict) change_set = old_set.intersection(new_dict) # 转换成字典的key del_key = tuple(del_set)[0] add_key = tuple(add_set)[0] # 删除字典中的key del old_dict[del_key] # 添加字典中没有的key old_dict[add_key]=new_dict[add_key] # 修改已经更改的字段 for change_key in tuple(change_set): print (change_key) old_dict[change_key]=new_dict[change_key] # 打印当前字典 print (old_dict)
list_1 = [1,4,56,6,32,2,1223,4] list_2 = [23,4,5,2,1223,1] list_3 = [4,6,1] list_1 = set(list_1) list_2 = set(list_2) print ('type',type(list_2)) # 查看数据类型。 #交集 list_jiaoji = list_1.intersection(list_2) list_1.intersection_update(list_2) # 取交集,直接更新到list_1 print (list_1 & list_2) print ('交集',list_jiaoji) #并集 list_bingji = list_1.union(list_2) print (list_1 | list_2) print ('并集',list_bingji) #差集 list_chaji = list_1.difference(list_2) print (list_1 - list_2) print ('差集',list_chaji) #子集 list_ziji = set(list_3).issubset(list_1) print ('子集',list_ziji) #对称差集 list_fanxiang = set(list_2).symmetric_difference(list_1) print (list_1 ^ list_2) print ('对称差集',list_fanxiang,list_2) #交集以外 list_jjyw = list_2.isdisjoint(list_1) print ('jjyw',list_jjyw) #添加一项 list_1.add(999) #添加多项 list_2.update([888,222,333]) print (list_1,list_2) # 移除指定元素,不存在,不报错。 list_discard = list_1.discard(2222) # 移除指定元素,不存在,报错。 list_remove = list_1.remove(2222) # 随机移除某个元素,并返回值。不加参数 str = list_1.pop() # 随机删除一个元素,返回值。