跳至主要內容

字典和集合

yczha大约 1 分钟python基础python语法python

Python基础系列内容为学习廖雪峰老师Python3教程的记录,廖雪峰老师官网地址:廖雪峰Python3教程open in new window

dict

Python内置一种字典(dictionary),在其他语言中也成为map, 其通过键值对(key-value) 来存储内容,加快查询速度

示例:现在我们需要来存储三名学生的姓名和成绩,使用list 可表示为:

names=['Michael','Tom','Tiny']
scores=[99,98,97]

可以看出如果需要同时获得一个同学的姓名和成绩的话就需要查询两个list ,且其还没有强对应关系,把上述内容改为dict 表示为:

stu={'Michael':99,'Tom':98,'Tiny':97}

访问可直接通过键值访问:

>>>stu['Michael']
99

可以通过pop 方法删除内容:

stu.pop('Michael')

dict 不同于list 的地方在于其存储元素是建立索引的,所以查找速度不会因为本身内容的增加而减慢,但是list 就会,这也导致dict会占用更多的内存空间。

dict 内部通过哈希算法来计算存储位置,因而dict键值不能改变!

set

类似dict,但是至存储键不储存值,且set 内部键值不可重复,重复元素会被自动剔除

s=set([1,1,2,3,4,5])

结果为:

{1,2,3,4,5}

可以使用add方法添加元素:

s.add(6)

可以通过 remove 方法删除元素

s.remove(4)

set可执行数学意义上的集合运算:如

求交集

s1&s2

求并集:

s1|s2