Python中的dict和set

(本文参照廖雪峰的教程)

dict是python中的字典结构,采用key-value存储,具有很快的查找速度。

dict的定义:

                  D =  {'holiday': 95, 'benny': 85, 'jane': 75} 

      注意使用的是大括号{}   dict之所以有很快的查找速度是由于在存储时key和value就建立好了映射,在查找某一个值时可以直接根据key的值得到value的存放地址,所以无论dict有多大其查找的速度都是一样的。除了初始化时可以把数据放到dict之外,也可以采用赋值的方法,例:D['kevin'] = 97   如果key不存在话会报错。 确认key是否存在在dict中可以使用:

              ‘holiday’ in D     如果存在返回‘True’  如果不存在返回‘False’

另一种方法是通过dict提供的get方法:  D.get('jane')  如果不存在返回None,如果需要返回其他值使用D.get('jade', -1)

删除key的方法可以用pop的方法:D.pop('jane')   

需要注意的是:dict内部的存放顺序和key放入的顺序是没有关系的。

和list相比,dict具有的优点是:查表速度极快,缺点是:占用较大的内存。所以dict是一种用空间换时间的一种方式。

另一个需要注意的是:dict中的key是不可变的对象,因为查表采用hash方法,必须要保证key值对应唯一的位置,所以dict中的key可以是字符串和整数。定义dict时,如果key有重复,则会以后面的key-value值为准。例:D = 

set

set可以理解为没有value的dict。 set定义: s = set([1,2,3,4])     重复元素在set中会被自动过滤,也就是说如果是s = set([1,2,3,4,3]) 的结果仍然是{1,2,3,4}  向set中增加一个key可以用s.add(key)  删除使用remove函数

 

你可能感兴趣的:(python)