Python自学记录——使用dict和set

一.目录
1.dict
2.set
3.总结
二.
A. dict语句

dict类似于指针一样的东西吧,不知道准不准确。
对应的名字对应相应的成绩。
用list也能实现,但随着数量的增多会变慢。
而dict就是Key_Value的关系,一个key对应一个值,这个值唯一。

Python自学记录——使用dict和set_第1张图片
可以除了初始化的方式,还可以像下面这样直接放入。Python自学记录——使用dict和set_第2张图片

如果key不存在,就会报错。

检验存不存在的方法,有两种。

1.通过 in 的方式

不存在会出现 faulsePython自学记录——使用dict和set_第3张图片

2.get()的方法

如果不存在,不返回值,或者返回自己指定的值。

Python自学记录——使用dict和set_第4张图片

3.删除 key的方式通过 pop()

Python自学记录——使用dict和set_第5张图片

dict的特点

a.查找和插入速度极快,不会随着key的增多二变慢
b.需要占用大量的内存,浪费内存

list则相反。

注意:dict的key不可变对象,因为dict是通过key来找value,如果key出问题,dict内部全乱了。这种算法是哈希算法。

字符串、整数都为不可变可以用。list不能。

B. set语句

set和dict类似,但是set不存储value值。同样,set中的key不可重复。

创建一个set,需要提供一个list作为输入集合。

Python自学记录——使用dict和set_第6张图片
可以用add()添加元素
可重复添加,但是不会有效果。
就是说集合里的元素全是独一无二的。

Python自学记录——使用dict和set_第7张图片

用remove()来删除元素

Python自学记录——使用dict和set_第8张图片
可以两个set间作交集并集处理。

Python自学记录——使用dict和set_第9张图片
和dict一样,色图,不能将list作为key,key必须为不可变对象。

不可变对象说明

这里说list为可变对象

Python自学记录——使用dict和set_第10张图片
可以看到,list中会通过sort()来排序改变顺序,是可变的。而变量a通过replace()后(实际上是对不变量的改变)输出变量改变,但本身任然没变,不变量不可变。
这里有点绕,理解变量不变量,就够了。

C: 总结:

1.dict 为key_value。
2.set 为key。
3.元素均为不可变的。

2020.4.7

你可能感兴趣的:(Python学习,python)