刚开始使用Python时,主要是使用列表比较多。慢慢地用Python处理的数据变多、变复杂,特别是经常使用pandas、numpy时,由于字典可以无缝转化成pandas的DataFrame或者JSON格式的数据,可以带来很多便利。
2 字典简介
字典是一种可变容器,可以存储任意类型的对象。
字典也是Python中唯一内建的映射(mapping)类型,常见格式如下:
1 | dict = {'Alice': '2341', |
字典的每个键值对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中,空字典由两个大括号组成 。键必须是唯一的,但值则不必。值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。
本文主要介绍字典的定义、创建方法以及一些基本操作。
3 创建字典
3.1 直观方法
直接地,在大括号里输入如下的键值对,即创建了一个字典。
1 | >>> dict = {'Alice': '2341', |
3.2 dict函数
数据处理的时候,使用的更多的是dict函数,通过其他映射或者(键,值)对的序列来创建字典,代码如下:
1 | >>> items = [('name', 'Gumby'), ('age','42')] |
或者通过关键字参数来创建字典,代码如下:
1 | >>> my_dict = dict(name='Gumby', age=42) |
其他的数据格式也常常能很方便地转化为字典,例如JSON格式的数据,这里不再展开。
4 字典基本操作
操作 | 注释 |
---|---|
dict[key] | 返回键key所对应的值 |
dict[key]=value | 将键key所对应的值赋成value |
del dict[key] | 删除字典中键为key的项 |
key in dict | 检查dict中是否含有键为key的项 |
len(dict) | 返回dict中项(键—值对)的数量 |
在字典中检查键的成员资格比在列表中检查值的成员资格更高效