>>> s['stu8-9']=(80,50)>>>s
{'stu3': 60, 'stu8-9': (80, 50), 'stu2': 90, 'stu1': 50, 'stu4-7': [40, 80, 50, 60]}
读取stu8的分数
>>> s['stu8-9'][0]80
>>>
5.删除key
要删除一个key,用pop(key)方法,对应的value也会从dict中删除
例如:删除key"stu1"
>>> s.pop('stu1')50
>>>s
{'stu3': 60, 'stu8-9': (80, 50), 'stu2': 90, 'stu4-7': [40, 80, 50, 60]}>>> s['stu1']
Traceback (most recent call last):
File"", line 1, in s['stu1']
KeyError:'stu1'
>>>
6.判断一个key是否存在
方法1:直接打印输出,如果key不存在会返回错误
>>> s['stu1']
Traceback (most recent call last):
File"", line 1, in s['stu1']
KeyError:'stu1'
>>>
方法2:通过dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value:
s.get('stu1')
可以用print打印出None
>>> print (s.get('stu1'))
None>>>
可以自己指定key不存在返回的值,例如返回1,但是返回值必须是整形
>>> s.get('stu1',1)1
方法3:通过in判断key是否存在,不存在返回Flase
>>> 'stu1' ins
False>>> 'stu2' ins
True
二、set([])
set和dict类似,也是一组key的集合,但不存储value;set和dict一样key不允许是list且key不能重复。
1.创建set
要创建一个set,需要提供一个list作为输入集合,注意set的固定格式,set([]),在set()中加入list
>>> se=set(['a','b','c'])>>>se
{'b', 'c', 'a'}
注意:list中的每一个元素都是一个key,但是元素不能是list可以是常量、字符串、tuple、浮点型
2.读取key
>>>se
{'b', 'c', 'a'}
set不支持索引,所以没办法像list和tuple那样根据索引获取指定的key,比如se[0]会返回错误
4.增加key
通过add(key)方法可以添加元素到set中,可以重复添加,但不会有效果
>>> se.add('d')>>>se
{'b', 'c', 'd', 'a'}>>>
5.删除key
通过remove(key)方法可以删除元素
>>> se.remove('c')>>>se
{'b', 'd', 'a'}>>>
6.设置一个list key
>>> se.add(['e','f'])
Traceback (most recent call last):
File"", line 1, in se.add(['e','f'])
TypeError: unhashable type:'list'
返回错误:没有对应的list哈希表
注意:这里的['e','f']指的是一个元素(key),只不过它是list元素,set([])中的key不支持list.