一.目录
1.dict
2.set
3.总结
二.
A. dict语句
dict类似于指针一样的东西吧,不知道准不准确。
对应的名字对应相应的成绩。
用list也能实现,但随着数量的增多会变慢。
而dict就是Key_Value的关系,一个key对应一个值,这个值唯一。
可以除了初始化的方式,还可以像下面这样直接放入。
如果key不存在,就会报错。
检验存不存在的方法,有两种。
1.通过 in 的方式
不存在会出现 faulse
2.get()的方法
如果不存在,不返回值,或者返回自己指定的值。
3.删除 key的方式通过 pop()
dict的特点
a.查找和插入速度极快,不会随着key的增多二变慢
b.需要占用大量的内存,浪费内存
list则相反。
注意:dict的key不可变对象,因为dict是通过key来找value,如果key出问题,dict内部全乱了。这种算法是哈希算法。
字符串、整数都为不可变可以用。list不能。
B. set语句
set和dict类似,但是set不存储value值。同样,set中的key不可重复。
创建一个set,需要提供一个list作为输入集合。
可以用add()添加元素
可重复添加,但是不会有效果。
就是说集合里的元素全是独一无二的。
用remove()来删除元素
可以两个set间作交集并集处理。
和dict一样,色图,不能将list作为key,key必须为不可变对象。
不可变对象说明
这里说list为可变对象
可以看到,list中会通过sort()来排序改变顺序,是可变的。而变量a通过replace()后(实际上是对不变量的改变)输出变量改变,但本身任然没变,不变量不可变。
这里有点绕,理解变量不变量,就够了。
C: 总结:
1.dict 为key_value。
2.set 为key。
3.元素均为不可变的。
2020.4.7