字典

字典以关键字为索引,关键字可以是任意不可变类型,通常用字符串或数值。理解字典的最佳方式是把它看做无序的关键字:值 对(key:value)集合,关键字必须是互不相同的(在同一个字典内)。一对大括号创建一个空的字典:{}.

字典由键和对应值成对组成。字典也被称作关联数组或哈希表。

不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住,如下实例:

python 字典 关键词 python字典关键字匹配_字典

1. 创建字典

第一种方法

dict1={"name":"linda","age":12}

python 字典 关键词 python字典关键字匹配_赋值_02

第二种方法

dict2 = dict((['name','linda'],['age',13]))
dict3 = dict([['name','linda'],['age',13]])
dict4 = dict([('name','linda'),('age',13)])
dict5 = dict((('name','linda'),('age',13)))

python 字典 关键词 python字典关键字匹配_字典_03

第三种方法

dict.fromkeys(seq[, value])
seq – 字典键值列表。
value – 可选参数, 设置键序列(seq)的值。
创建一个新字典,以序列 seq 中元素做字典的键,val 为字典所有键对应的初始值

dict1= {}.fromkeys(('x','y','z'),1)
dict2=dict.fromkeys([7,8,9],"test")

python 字典 关键词 python字典关键字匹配_字符串_04

fromkeys 坑的地方
如果里面嵌套了一个字典,修改一个的时候就会修改所有的, 就像浅层copy一样的

python 字典 关键词 python字典关键字匹配_字符串_05

2.访问字典

根据key值查询value

dict['key']
dict.get('key')
#dict.get(key, default=None)
#返回指定键的值,如果值不在字典中返回default值

返回一个键的列表

dict.keys()

python 字典 关键词 python字典关键字匹配_字典_06


返回一个值的列表

dict.values()

python 字典 关键词 python字典关键字匹配_字典_07


返回一个包含(键,值)元组的列表

dict.items()

python 字典 关键词 python字典关键字匹配_python基本数据类型_08

返回键 key 对应的值

dict[key]

python 字典 关键词 python字典关键字匹配_python 字典 关键词_09


得到键 key 的值,若键不存在,则返回默认值 default

dict.get(key,default)

python 字典 关键词 python字典关键字匹配_python基本数据类型_10


3.修改字典

修改键name的值

dict['moukey'] = 'mouvalue'

如果字典中 key 键存在,删除并返回 dict[key],如果 key 键不存在,且没有给出 default 的值,引发KeyError 异常

dict.pop(key,default)

python 字典 关键词 python字典关键字匹配_字典_11

如果字典中不存在 key 键,由 dict[key]=default 为它赋值,若存在则不改变它的值

dict.setdefault(key,default='unknown')

python 字典 关键词 python字典关键字匹配_python 字典 关键词_12

将字典 dict2 的键-值对添加到字典 dict

dict.update(dict2)

python 字典 关键词 python字典关键字匹配_字典_13

删除字典中所有元素

dict.clear()

python 字典 关键词 python字典关键字匹配_python基本数据类型_14

删除字典

del dict

python 字典 关键词 python字典关键字匹配_python基本数据类型_15


随机删除

dict.popitem()

python 字典 关键词 python字典关键字匹配_字典_16


dict.copy()

返回一个字典的浅复制

python 字典 关键词 python字典关键字匹配_字典_17


Python字典包含了以下内置函数:

  1. len(dict) 计算字典元素个数,即键的总数。

python 字典 关键词 python字典关键字匹配_字符串_18

  1. str(dict) 输出字典可打印的字符串表示。

python 字典 关键词 python字典关键字匹配_字符串_19

  1. type(variable)
    返回输入的变量类型,如果变量是字典就返回字典类型。

python 字典 关键词 python字典关键字匹配_字典_20