Python(8)有关字典


Python中的字典是完全不同的东西,它们不是序列,没有顺序,只是一种映射。内部的元素以逗号分开,以大括

号包围。它们不是通过位置而是通过键来存储的,也具有可变性,可以就地的改变,增大或减小。

主要属性:

<1>通过键而不是偏移量来读取

<2>任意对象的无序集合

<3>可变长、异构、任意嵌套

<4>属于可变映射

<5>对象引用表

常见操作

D={ } 空字典

'name' in D 成员存在测试

D.keys() 方法:键

D.values() 值

D.items() 键+值

D.copy() 副本

D.get(key,default) 默认

D.update(D1) 合并

D.pop(key) 删除

len(D) 求长度

D[name] = 'ww' 修改,增加

del D[key] 删除

list(D.values()) list(D.items()) list(D.keys()) 将相应的值转化为list

映射操作

>>> D={}

>>> D['name'] = 'Bob'

>>> D['job'] = 'dev'

>>> D['age'] = 40

>>> D

{'age':40,'job':'dev','name':'Bob'}

>>> print (D['name'])

Bob

遍历操作

由于没有顺序,我们可以先把字典的键转换为list,排序之后打印。

>>> d = list(D.keys())

>>> d

['a','c','b']

>>> d.sort()

>>> d

['a','b','c']

>>> for i in d:

print(i,'=>',d[i])

a => 1

b => 2

c => 3

简化点

>>> for key in sorted(D):

print(key,'=>',D[key])

用法注意事项:

<1>序列运算无效(无顺序)

<2>对新索引赋值会添加项

<3>键不一定总是字符串

<4>避免missing key的错误

参考<>

评论关闭