(python learn) 7 -- 字典
python中的字典是用来存储键值对的。也就是存储 key-value这种格式的数据。比如:
1 >>> dic1={'name':'kramer','age':26,'gender':'male','tel':8888} 2 >>>
现在我们就创建了一个字典 dic1,我们可以通过下面的形式使用这个字典。
1 >>> dic1['tel'] 2 8888
与列表相比,字典的使用不会显得那么声色,如果是列表,我们只能通过索引来取值,但有可能我们不记得对应的索引可以取什么样的值,可是通过字典就可以跟更加直观。
字典的对象和列表一样也是可以变的,但是字典的键必须是不可变的。
举个例子:
1 >>> dic1 2 {'gender': 'male', 'age': 26, 'tel': 8888, 'name': 'kramer'} 3 >>> 4 >>> id(dic1) 5 5260528 6 >>> dic1['age']=28 7 >>> id(dic1) 8 5260528 9 >>> dic1 10 {'gender': 'male', 'age': 28, 'tel': 8888, 'name': 'kramer'}
可以看到我们把字典的对象改变了,但是字典的地址没变。
再看一个例子,说明字典的key不可以变。
1 >>> c='A' 2 >>> 3 >>> dic1[c]='new' 4 >>> dic1 5 {'A': 'new', 'gender': 'male', 'age': 28, 'tel': 8888, 'name': 'kramer'} 6 >>> c='B' 7 >>> dic1 8 {'A': 'new', 'gender': 'male', 'age': 28, 'tel': 8888, 'name': 'kramer'}
首先我们为变量c赋值'
然后以变量c作为key为字典对象dic1增加一个 key-value
这时我们可以看到键由变量c变成了c代表的常量 'A'
即使我们把变量c重新赋值成B,也无法改变dic1中键为'A'。
字典中的数据更新可以用以下方法
del 删除字典或者字典中的值
1 >>> dic1 2 {'A': 'new', 'gender': 'male', 'age': 28, 'tel': 8888, 'name': 'kramer'} 3 >>> del(dic1['A']) 4 >>> dic1 5 {'gender': 'male', 'age': 28, 'tel': 8888, 'name': 'kramer'} 6 >>> 7 >>> del(dic1) 8 >>> dic1 9 Traceback (most recent call last): 10 File "<stdin>", line 1, in ? 11 NameError: name 'dic1' is not defined
{}.pop() 删除并返回一个值
1 >>> dic1 2 {'A': 'new', 'gender': 'male', 'age': 28, 'tel': 8888, 'name': 'kramer'} 3 >>> dic1.pop('A') 4 'new' 5 >>> dic1 6 {'gender': 'male', 'age': 28, 'tel': 8888, 'name': 'kramer'} 7 >>> 8 >>> THE 'A':new IS DELTETED
{}.clear()清空字典的值
1 >>> dic1 2 {'A': 'new', 'gender': 'male', 'age': 28, 'tel': 8888, 'name': 'kramer'} 3 >>> dic1.clear() 4 >>> dic1 5 {}