什么是字典
字典是一种可变容器模型,且可以储存任意类型对象。为什么称之为字典,是因为,在使用过程中就像查字典,你要查 ‘apple’ 这个单词,你通过首字母,会先查找 ‘a’ ——> ‘p’——>’p’ 然后你就找到了 ‘apple’ ,而不需要像列表一样从第一个元素开始找到最后一个元素,所以某种程度上来说,字典要比列表快的多,而 list 越大,查找就越慢。
定义:在{}内用 ‘,’ 分隔开多个 key:value ,通常 key 必须是一个不可变的类型,而通常呢我们使用字符串来表达key,用来描述 value 的特征, 而value可以是任意数据类型。
1 | # e.g. |
字典的特性
- 字典value可以是任何的python对象,但key不行。
- 不允许同一个key出现两次。创建时如果同一个key被赋值两次,后一个值会被记住
- key必须不可变, 所以可以用数字,字符串或元组充当,而用列表就不行
- 能存多个值
- 无序
- 可变(值可以变,id不变)
- 不可hash
字典的使用
####访问字典里的值
1 | info={ |
计算字典元素个数,即计算key的总数
1 | info={ |
按key存取值:可存可取
1 | info={ |
删除元素
1 | info={ |
成员运算 in 和 not in
1 | info={ |
循环
1 | info={ |
快速创造一个字典
1 | # fromkeys:需求是快速新造出一个字典,value的初始值全部都为None |
setdefault
1 | info={ |