Python 字典(Dictionary)
字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中,例如:
dic = {"a":1,"b":2}
print(dic)
结果
{'a': 1, 'b': 2}
键一般是唯一的,如果后面的键已经在字典里存在了,则新录入的键值对会替换前面的键值,键值不需要唯一。
访问字典里的值
使用方括号[],方括号内为键,返回键值。
dic = {"a":1,"b":2}
print(dic["a"])
结果为
{'a': 1, 'b': 2}
修改字典
向字典添加新内容的方法是增加新的键值对,修改或删除已有的键/值,例如:
dic = {"a":1,"b":2}
dic["a"] = 3 #修改键值
print(dic)
dic["c"] = 5 #增加键值对
print(dic)
结果
{'a': 3, 'b': 2}
{'a': 3, 'b': 2, 'c': 5}
删除字典元素
可以删除单一元素,也可以清空字典,例如:
dic = {'a': 3, 'b': 2, 'c': 5}
del dic['a'] #删除单一条目
print(dic)
dic.clear() #清空字典
print(dic)
结果
{'b': 2, 'c': 5}
{}
字典键的特性
- 不予许同一个键出现两次,否则第二次的键值回去带第一个键所对应的键值。
- 键不必须可变,可以用数字、字符串、元组充当,列表不可以。
字典内置函数&方法
字典内置函数
cmp(dict1, dict2) | 比较两个字典元素 |
len(dict) | 计算字典元素个数,即键的总数。 |
str(dict) | 输出字典可打印的字符串表示 |
type(variable) | 返回输入的变量类型,如果变量是字典就返回字典类型。 |
字典内置方法
dict.clear() | 删除字典内所有元素 |
dict.copy() | 返回一个字典的浅复制。即拷贝对象后形成的变量,不随着原始变量的变化而变化。 |
dict.fromkeys(seq[, val]) | 创建一个新字典,以序列 seq 中元素做字典的键,val 为字典所有键对应的初始值 |
dict.get(key, default=None) | 返回指定键的值,如果值不在字典中返回default值 |
dict.has_key(key)) | 如果键在字典dict里返回true,否则返回false |
dict.items() | 以列表返回可遍历的(键, 值) 元组数组 |
dict.keys() | 以列表返回一个字典所有的键 |
dict.setdefault(key, default=None) | 和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default |
dict.update(dict2) | 把字典dict2的键/值对更新到dict里 |
dict.values() | 以列表返回字典中的所有值 |
pop(key[,default]) | 删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。 |