字典定义
字典类似于C语言的指针的集合,及一个键值对的集合。一个键对应一个内存空间,内存空间内的数据可以读写,但是键不能更改。
定义方法
字典名 = {key:value,......}
访问字典键值
访问的语法:字典名[key]。返回key对应的value。
>>> a = {'b':1,'c':2}
>>> print(a['b'])
1
同理,咱们在访问键值的时候可以进行重新赋值,则原value就被改变了。
添加键值对
没有特殊的语句,和访问键值的方法类似,但是传入key应该是新的key。
>>> a['e'] = 8
>>> print(a)
{'b': 1, 'c': 2, 'e': 8}
创建空字典
直接定义字典,在字典里不写东西就好。
删除键值
使用del语句。语法:del 字典名[key]
字典遍历
a = {'1':1,'2':2,'3':3}
for i in a:
print(a[i])
输出
1
2
3
按顺序遍历:
按顺序遍历可以是key顺序和value顺序。排序方法和列表的方法相同。
调用sorted的时候,如果不给字典写keys()方法,也默认是key顺序。如果写values()方法,则按value顺序。但是这里注意,用values方法只返回value,没有key。
字典嵌套
用列表嵌套
就是说列表里的元素是字典。
a = {'test':1,'yes':'yes'}
b = {'test':2,'yes':'no'}
c = [a,b]
print(c)
输出
[{'test': 1, 'yes': 'yes'}, {'test': 2, 'yes': 'no'}]
用字典嵌套
字典里的value是列表。
a = {'test':1,'yes':'yes'}
b = {'test':2,'yes':'no'}
c = {'d':a,'e':b}
print(c['d']['yes'])
输出
yes
可以看看print那块。'd’是取c的值,是一个字典对象。如果访问返回的对象的value,则在后边再加一个[]。
字典里嵌套列表,和上述的方法基本相同。不做赘述。