字典 

通过名字引用值的数据结构称为映射,字典是Python中唯一内建的 映射类型;

dict = {key1:value2, key2:value2, …}


注意:

1、键与值用冒号“:”分开
2、项与项用逗号“,”分开
3、字典中的键必须是唯一的,而值可以不唯一

操作:

dict .get(key, 0)       #同dict[key],多了个没有则返回缺省值0。[]没有则抛异常  

dict.has_key(key)      #有该键返回TRUE,否则FALSE  

dict.keys()              #返回字典键的列表  

dict.values()          #以列表的形式返回字典中的值,返回值的列表中可包含重复元素 

dict.items()        #将所有的字典项以列表方式返回,这些列表中的每一项都来自于(,),但是项在返回时并没有特殊顺序 

dict.update(dict2)     #增加合并字典

dict.popitem()         #得到一个pair,并从字典中删除它。已空则抛异常  

dict.clear()             #清空字典,同del dict 

dict.copy()              #拷贝字典  

dict.cmp(dict1,dict2)  #比较字典,(优先级为元素个数、键大小、键值大小)第一个大返回1,小返回-1,一样返回0          dict的复制  dict1 = dict        #别名  

dict2=dict.copy()   #克隆,即另一个拷贝。

循环:

遍历key值

for key dict.keys():

     print key 

遍历value值

for valuein dict.values():

     print value

遍历元素

for item in dict.items():

    print  item

for k,v in dict.items():

    print k,v


判断

dict.haskey(‘name') 

有–>True,无–>False
in 、not in   'name' in dict     

 有–>True,无–>False


字典和列表的区别

dict:–查找和插入的速度极快,不会随着key的增加而增加;–需要占用大量的内存,内存浪费多。–KEY不可变–默认无序

list:–查找和插入的时间随着元素的增加而增加;–占用空间小,浪费内存很少。–通过下标查询–有序

SET集合


特点:

无序 元素不重复

功能

关系测试,去重

a= set([1,2,3,4])

b= set([3,4,5,6])


a & b  #求交集 a.intersection(b)、

a | b  #求并集 a.union(b)

a – b  # 求差集 a.difference(b)

a ^ b #求对称差集 a.symmetric_difference(b)

a.issubset(b)  #a 是b 的子集

a.issuperset(b) # a 是否包含b