#!/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()
# 随机删除一个元素,返回值。