之前学过列表和元祖,这节学习字典和集合
列表list:有序可变
元祖tuple:有序不可变
字典dict:无序可变 (可以改变键对应的值)
集合set:无序不可变 (只能删除和添加)
这个理解挺好的,反映了这几种数据类型的特点。
字典:dict:每个元素有两个内容,key: value,一对键值对。
字典用{}花括号创建。
字典的访问用d[key]来访问,其中key必须在字典中存在,若不存在,会报错。区别于列表和元祖使用索引访问。
字典中有get方法,d.get(key)用了访问key 对应的值,如果key不存在,则返回None。
字典的特点是访问速度特别快,常数时间,与字典中元素个数无关。内部无序。key不能重复。缺点是占用内存大。还需要注意的是字典中的Key类型必须是不可变的,所以Key可以说整数,浮点数,字符串,元祖,但不可以是列表。
字典中键对应的值可以 改变:d[key] = X。
字典的遍历:
<span style="font-size:18px;">for key in d:
print key, d[key]</span>
集合set:
set是一系列无序的没有重复的元素的集合。和dict的Key很相似,1,无序;2,没有重复元素;3,需要是不可变得元素(不能是list)。
创建set, s = set([1,2,3,4])
方法:
set主要有两个方法:1,添加元素add,s.add(X),2,删除元素remove,s.remove(X)。
遍历set:
<span style="font-size:18px;">for name in s:
print name</span>