三. 字典

字典是一种通过名字引用值的数据结构。这种结构类型称为映射(mapping)。

1 创建和使用字典

字典可以通过下面的方式创建:


In [1]:
phonebook={'Alice':'2341','Beth':9102}
phonebook


Out[1]:
{'Alice': '2341', 'Beth': 9102}

1.1 dict函数

可以用dict函数,通过其他映射(比如其他字典)或者(键,值)这样的序列对建立字典。


In [2]:
items=[('name','Gumby'),('age','42')]
d=dict(items)
d


Out[2]:
{'age': '42', 'name': 'Gumby'}

dict函数也可以通过关键字参数来创建字典,如下:


In [3]:
d=dict(name='Gumby',age=42)
d


Out[3]:
{'age': 42, 'name': 'Gumby'}

1.2 基本字典操作

字典的基本行为在很多方面与序列类似:
len(d)返回d中项(键-值对)的数量;
d[k]返回关联到键k上的值;
d[k]=v将值v关联到键k上;
del d[k]删除键为k的项;
k in d检查d中是否含有键为k的项。


In [11]:
x=[]
x[42]='hello'


---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
<ipython-input-11-f0295807ecda> in <module>()
      1 x=[]
----> 2 x[42]='hello'

IndexError: list assignment index out of range

In [12]:
x={}
x[42]='hello'
x


Out[12]:
{42: 'hello'}

上面将字符串'hello'关联到一个空列表的42号位置上—这显然是不可能的,因为这个位置根本不存在。为了将其变为可能,必须用[None]*43或者其他方式初始化x,而不能仅使用[]。但是,可将'hello'关联到空字典的键42上。

1.3 字典的格式化字符串

字典的基

1.4 字典方法

字典的基


In [ ]: