一、set集合
元素是无序的,不可重复的数据类型
无序特性:嵌入的数据的顺序和取出来的顺序是不一样的
不可重复:数据不能有重复的元素
set定义:
使用{}来定义set集合:{},而且至少要有一个元素
可以对set集合类型进行集合运算,差集,补集,交集
# num6=set("abcdefg"); # num7=set("abcmn"); # print(num6 - num7)#差集 {'d', 'e', 'g', 'f'} 集合a中包含而集合b中不包含的元素 # print(num6 | num7)#并集{'e', 'w', 's', 'x', 'o', 'h', 'l'} 集合a或b中包含的所有元素 # print(num6 & num7)#交集{'e', 'o', 'l', 'h'}集合num6和num7中都包含了的元素 # print(num6 ^ num7)#不同时存在元素 {'m', 'g', 'f', 'd', 'e', 'n'}
语法:1、num1={values1,,values2}
2、num1=set(value)
方法:
1、添加
num1.add(s):添加值
num1.update(s):添加值
2、删除
num1.remove(s);删除一个值
num1.discard(s);删除一个值
num1.pop();随机删除一个值
3、计算元素个数
len(s)
4、清空集合
s.clear();
5、判断语法是否存在
"参数" in 变量名
x in s
num8=set(("xiaoming","xiaohong1","xiaobo")); #给集合添加一条信息 num8.add("小明"); print(num8);#{'xiaobo', '小明', 'xiaoming', 'xiaohong1'} #给集合添加一条信息, 列表信息直接添加到集合中,位置是随机放的 num8.update([1,2,3],[4,5,6]); print(num8);#{'小明', 2, 1, 3, 4, 5, 6, 'xiaobo', 'xiaoming', 'xiaohong1'} # #删除 # #第一种删除方式 num8.remove("xiaoming"); print(num8);#{1, 2, 3, 4, 5, 6, 'xiaobo', 'xiaohong1', '小明'} #第二种删除方式 num8.discard("小明"); print(num8);#{'xiaohong1', 2, 1, 3, 4, 'xiaobo', 5, 6} #的三种删除方式 num8.pop(); print(num8);#{2, 3, 4, 5, 6, 'xiaohong1', 'xiaobo'} #计算元素个数:len() num10={"name","age"}; print(len(num10)); # #清空集合 num11={"我是","魏世轩"}; num11.clear(); print(num11)#set()
二、字典
1、格式
字典有每个键值:key:value
每个键值用逗号隔开,
用{}来表示
2、作用:
即存储容器,可以存储任意类型对象
3、注意:
键是唯一的,而值是可以任意改变的
语句前面不能有空格
4、操作
增删改查
字典内置函数
1、len(num2):键值对数量
2、str(num2):输入语句
3、type(num2):返回变量类型
字典内置方法
1、keys():用户获取所有的键,是一个列表形式
2、values:用于获取所有的值,是一个列表形式
3、items:获取所有的键值对
4、dict.fromkeys():创建只有键的字典
num1={'name':'老大','age':'19','hobby':'看书'}; #1、查询name信息 print("名字:"+num1['name']);#名字:老大 #2、修改信息 num1['age']=20; print("修改年龄:",num1['age']);#修改年龄 20 #3、增加键值 num1['gender']='男'; print("性别:"+num1['gender']);#性别:男 #4、删除 #删除单个键值 del num1['name'] print(num1);#{'age': 20, 'gender': '男', 'hobby': '看书'} #清空字典 num1.clear(); print(num1);#{} #删除字典 del num1;#删除字典,什么都不会显示 #字典内置函数 num2={'name':'老二','age':20,'gender':'男','hobby':'吃'}; #统计字典键值对总共数量 print(len(num2));#4 #输出字典 print(str(num2));#{'name': '老二', 'gender': '男', 'age': 20, 'hobby': '吃'} #返回变量类型 print(type(num2));#<class 'dict'>字典类型 #字典内置方法 num3={'name':'老三','age':21,'gender':'女','hobby':'拉'}; print("字典长度 %d"%len(num3));#字典长度 4 #删除字典中所有元素 # num3.clear(); # print("字典删除后的长度 %d"%len(num3));#字典删除后的长度 0 #字典的浅复制 num4=num3.copy(); print("新复制的字典:",num4);#字典: {'hobby': '拉', 'age': 21, 'name': '老三', 'gender': '女'} #创建一个新字典num3.fromkeys(sel,val);sel字典的键,val所有键的唯一值 num5=num3.fromkeys(num3);#引用的num3的键 print("新的字典为 %s"% str(num5))#新的字典为 {'gender': None, 'name': None, 'hobby': None, 'age': None} #keys()用户获取所有的键,是一个列表形式 print(num3.keys());#dict_keys(['age', 'hobby', 'name', 'gender']) #values:用于获取所有的值,是一个列表形式 print(num3.values());#dict_values(['拉', 21, '女', '老三']) #items:获取所有的键值对 print(num3.items());#dict_items([('hobby', '拉'), ('name', '老三'), ('gender', '女'), ('age', 21)]) #dict.fromkeys():创建只有键的字典 print(num3.fromkeys(num3));#{'name': None, 'age': None, 'gender': None, 'hobby': None}