python学习笔记5

字典与集合

一、字典

详细解释链接
**字典是python语言中唯一的映射类型,用花括号{}表示,一个字典条目就是一个键值对,一个键对应一个值,是一对一的关系。**一个字典对象是可变的,它是一个容器类型,能存储任意个数的python对象,其中也包括其它容器类型。方法keys()返回字典的键列表,values()返回字典的值列表,items()返回字典的键值对列表。字典中的值没有任何限制,它们可以是任意python对象,但字典中的键是有类型限制的,每个键只能对应一个值,且键必须是可哈系的,所有不可变类型都是可哈希的,不可变集合frozenset的元素可作为字典的键,但可变集合set就不行了,很少有可变对象是可哈希的,不过一个实现了hash()特殊方法的类是可以的。创建字典可以使用花括号赋值给一个变量,或者使用工厂方法dict(),或者使用内建方法fromkeys()。访问字典有多种方法,如上面提到的三个方法等一些内建方法,还支持迭代器访问字典的键,需要注意的是使用方括号[]更新字典内容时如果这个键不存在就会增加这个键值对。删除字典或字典中的内容可以使用内建方法或者del语句。字典支持赋值、比较等标准类型操作符,方括号[]访问,in、not in检查某个键是否存在于字典中,标准类型函数如获取类型的type()、返回字符串表示形式的str()、用于比较的cmp()等,以及创建字典的工厂函数dict()、返回长度的len()、返回哈希值的hash()。

访问字典里的值
python学习笔记6
修改字典
python学习笔记6
删除字典元素
python学习笔记6
字典键的特性
字典值可以是任何的 python 对象,既可以是标准的对象,也可以是用户定义的,但键不行。
两个重要的点需要记住:
1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住。
2)键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行。

字典内置函数&方法
clear():删除字典中所有元素。
copy():返回字典(浅复制)的一个副本。
fromkeys(seq,val=None):创建并返回一个新字典,以seq中的元素做该字典的键,val做该字典中所有键对应的初始值。
get(key,default=None):返回字典中的键key对应的值value,如果字典中不存在此键,则返回default的值。
has_key(key):如果键key在字典中存在,返回True,否则返回False。python2.2后这个方法几乎已废弃不用了,通常用in来替代。
items():返回一个包含字典中键值对元组的列表。
keys():返回一个包含字典中键的列表。
iter():方法iteritems()、iterkeys()、itervalues()与它们对应的非迭代方法一样,不同的是它们返回一个迭代子,而不是一个列表。
pop(key[,default]):和方法get()类似,如果字典中key键存在,删除并返回dict[key],如果key键不存在,且没有给出default的值,引发KeyError异常。
setdefault(key,default=None):和方法get()相似,如果字典中不存在key键,由dict[key]=default为它赋值。
update(dict2):将字典dict2的键值对添加到当前字典中。values():返回一个包含字典中所有值的列表。
python学习笔记6
详细解释链接

二、集合

详细解释链接
集合(set)是一个无序的不重复元素序列。
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
集合的基本操作
1、添加元素
python学习笔记6
另一种方式:
python学习笔记6
2、移除元素
将元素 x 从集合 s 中移除,且一次只能移除一个元素,如果元素不存在,则会发生错误。
python学习笔记6
3、计算集合元素个数
python学习笔记6
4、清空集合
python学习笔记6
5、判断元素是否在集合中存在
python学习笔记6
集合内置方法完整列表
python学习笔记6
参考链接

相关文章: