Python中的字典和其它语言中的字典一样,也是key-value形式,key必须唯一,value不需要唯一。Python里的字典用花括号{}
表示,每个键值对用,
号隔开,每个键值对里用:
分割key和value:
{key1 : value1, key2 : value2 }
初始化
- 方式一
a = {'a': 1, 'b': 2} # {'a': 1, 'b': 2}
- 方式二
b = dict(c=3, d=4) # {'c': 3, 'd': 4}
- 字典中的key必须是不可变的,如
字符串
,数字
或元组
,列表是可变的,不能做为key;字典中的value可以取任何数据类型:
dict = {'a': True, 1.0: 'hi', (0, 1): 3}
访问字典里的值
dict = {'a': True, 1.0: 'hi', (0, 1): 3}
- 根据key获取value
print dict['a'] # True
- 获取所有key
print dict.keys() # ['a', 1.0, (0, 1)]
- 获取所有value
print dict.values() # [True, 'hi', 3]
增删改
字典里的增加和修改操作是一样的,区别是添加一个key和value时,会判断字典里是否已有那个key,若有的话,会把以前的value替换成待添加的vlaue;删除分删除单个key-value和删除整个字典:
dict = {'a': 1, 'b': 2, 'c': 3}
print dict
# 增加
dict['d'] = '4'
print dict
# 修改
dict['a'] = 10
print dict
# 删除单个
del dict['a']
print dict
# 清空字典
dict.clear()
print dict
打印结果:
{'a': 1, 'c': 3, 'b': 2}
{'a': 1, 'c': 3, 'b': 2, 'd': '4'}
{'a': 10, 'c': 3, 'b': 2, 'd': '4'}
{'c': 3, 'b': 2, 'd': '4'}
{}
其它操作
dict = {'a': 1, 'b': 2, 'c': 3}
# 判断'a'是否在keys里
a = 'a' in dict
print a
# 返回字典长度
b = len(dict)
print b
# 把字典字符串化
c = str(dict)
print c
print type(c)
打印结果:
True
3
{'a': 1, 'c': 3, 'b': 2}
<type 'str'>