Dictionary 是使用非常频繁的另外一种序列类数据结构,元素采用“键-值”对的形式写在花扣号(“{}”)里,用逗号相间隔。在同一字典中,“键” 是唯一的,不能重复。
可以把字典理解为一种特殊的集合,以关键字为索引的无序 “key-value“对的集合。
和列表或元组相比,序列或元组是以连续的整数为索引,而字典以关键字为索引。关键字可以是任意不可变类型,通常用字符串或数值。
dictionary = {key_1 : value_1, key_2 : value_2, ... key_n : value_n}
1. 访问和修改字典元素。
访问字典元素的语法是:dictionary[key]
# 女神胸围
goddess_bust_size = {
'sunyanzi' : 'A',
'zhuyin' : 'B',
'qiushuzhen' : 'C',
'linzhiling' : 'D',
'liuyan' : 'E'
}
print("Sun Yanzi's bust size is : " + goddess_bust_size['sunyanzi'])
print("Zhu Yin's bust size is : " + goddess_bust_size['zhuyin'])
print("Qiu Shuzhen's bust size is : " + goddess_bust_size['qiushuzhen'])
print("Lin Zhiling's bust size is : " + goddess_bust_size['linzhiling'])
print("Liu Yan's bust size is : " + goddess_bust_size['liuyan'])
执行结果为:
Sun Yanzi's bust size is : A
Zhu Yin's bust size is : B
Qiu Shuzhen's bust size is : C
Lin Zhiling's bust size is : D
Liu Yan's bust size is : E
如果访问的 key 不存在,会提示“键错误”
# 小四的胸围是多少
print("Guo Jingming's bust size is : " + goddess_bust_size['guojingming'])
执行结果为:
KeyError: 'guojingming'
修改字典元素值
# 修改孙燕姿的胸围
goddess_bust_size['sunyanzi'] = 'E'
print("Sun Yanzi's bust size is : " + goddess_bust_size['sunyanzi'])
执行结果为:
Sun Yanzi's bust size is : E
2. 字典中元素的数据类型可以不同。
和 List 一样,字典也是一个超级收纳箱,比如记录一个人的信息
# 女神柳岩的信息
liuyan = {
'name' : '柳岩',
'birthday' : '1980-11-08',
'age' : 38,
'bust_size' : 'E'
}
print(liuyan)
执行结果为:
{'name': '柳岩', 'birthday': '1980-11-08', 'age': 38, 'bust_size': 'E'}
3. 向字典添加新内容的方法是直接增加新的键/值对。
# 新增柳岩的信息
liuyan['hobby'] = '唱歌和跳舞'
print(liuyan)
执行结果为:
{'name_ch': '柳岩', 'birthday': '1980-11-08', 'age': 38, 'bust_size': 'E', 'hobby': '唱歌和跳舞'}
4. 字典中元素的“键”不能重复出现。
如果同一个键被赋值两次,以后一个值为准。
liuyan = {
'name' : '柳岩', # 键重复了
'name' : 'Ada', # 键重复了
'birthday' : '1980-11-08',
'age' : 38,
'bust_size' : 'E'
}
print(liuyan)
执行结果为:
{'name': 'Ada', 'birthday': '1980-11-08', 'age': 38, 'bust_size': 'E'}
5. 字典中元素的“键”必须是不可变的元素,比如数值、字符串或元组
6. 字典相关的函数和方法
这里说的函数值得是 Python 内置的、可供全局调用的方法;而方法则指的是列表自身提供的方法。
序号 | 类别 | 名称 | 说明 |
---|---|---|---|
1 | len() | 全局函数 | len(dict) 返回字典中元素个数 |
2 | get() | 方法 | dict.get(key[, default]) 在返回指定键的值,如果键不在字典中返回default值 |
3 | items() | 方法 | dict.items() 以列表形式返回字典遍历结果 |
4 | pop() | 方法 | dict.pop(key[, default]) 弹出指定键所对应的值。key值必须给出。 否则,返回default值 |
5 | key in dict | 方法 | key in dict 如果键在字典dict里返回true,否则返回false |
>>> goddess = {'Top 1' : '蔡少芬', 'Top 2' : '王祖贤', 'Top 3' : '邱淑贞', 'Top 4' : '赵雅芝'}
>>> goddess.get('Top 1')
'蔡少芬'
>>> goddess.items()
dict_items([('Top 1', '蔡少芬'), ('Top 2', '王祖贤'), ('Top 3', '邱淑贞'), ('Top 4', '赵雅芝')])
>>> goddess.get('Top 5', '柳岩')
'柳岩'
>>> goddess.pop('Top 4')
('Top 4', '赵雅芝')
>>> 'Top 1' in goddess
True
给程序狗送福利
女神
网友评论