????????字典一词源自中国,是为字词提供音韵、意思解释、例句、用法等等的工具书,字为主,兼收词。字典之概念为中国所独有。 西方无字典之说,dictionary应为词典之义。
????????Python中,字典是彼此间无序的键值对(key : value)的集合,为一种可变容器模型,用以存储任意类型对象。
????????字典包括在大括号 {} 中,元素间以逗号分隔,格式如下: {key1 : value1, key2 : value2, key3 : value3 ...}。其中键必须是唯一的,但值则不必;值可以取任何数据类型,但键必须不可变,如字符串,数字。
????????字典采用{}或内置函数dict()创建,不同于集合,{}可以创建空字典:
>>> d={}
>>> type(d)
<class 'dict'>
>>> s=set()
>>> type(s)
<class 'set'>
>>> d=dict()
>>> type(d)
<class 'dict'>
>>>
1、字典的访问及修改
????????利用方括号[]可以据键访问字典相应的值,也可以增加新的键值对,修改已有键值:
>>>d={'Name':'Runoob','Age':7,'Class':'First'}
>>>d['Name']
'Runoob'
>>> d['Age']=8
>>> print(d)
{'Name': 'Runoob', 'Age': 8, 'Class': 'First'}
>>> d['Grade']=4
>>> print(d)
{'Name': 'Runoob', 'Age': 8, 'Class': 'First', 'Grade': 4}
2、字典类型操作函数及方法
函数或方法 | 描述 |
---|
del d[k] | 删除字典d中键k所对应的数据值 | k in d | 判断键k是否在字典d中,若在返回True,否则False。 | d.keys() | 返回字典d中所有的键信息 | d.values() | 返回字典d中所有的值信息 | d.items() | 返回字典d中所有的键值对信息 | len(d) | 返回字典中键值对的个数 | d.get(key[,default]) | 指定键存在,则返回相应值,否则返回default值 | d.pop(key[,default]) | 指定键存在,则取出相应值,否则返回default值 | d.popitem() | 随机从字典d中取出一个键值对,以元组形式返回 | d.clear() | 删除所有键值对 |
>>> del d['Grade']
>>> d
{'Name': 'Runoob', 'Age': 8, 'Class': 'First'}
>>> 'Age' in d
True
>>> d.keys()
dict_keys(['Name', 'Age', 'Class'])
>>> d.values()
dict_values(['Runoob', 8, 'First'])
>>> d.items()
dict_items([('Name', 'Runoob'), ('Age', 8), ('Class', 'First')])
>>> len(d)
3
>>> d.get('Grade',3)
3
>>>d.pop('Age',7)
8
>>> d.popitem()
('Class', 'First')
>>> d.clear()
>>> d
{}
????????注意:d.keys()、d.values()返回的是字典的键、值类型,可以用for..in的方式遍历,但不能作为列表类型来操作。
|