Python 基础---字典、集合


字典 
通过名字引用值的数据结构称为映射,字典是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 
 

评论关闭