Python内置数据结构(二)

1、集合

集合的元素是唯一的、无序的。
(1)集合的初始化

(2)集合元素增加的方法
1)add方法

2)update方法

3)set的元素必须是可hash的


(3)集合元素删除的方法
1)remove

2)discard

3)pop

4)clear

(4)集合元素修改和查找的方法

(5)集合的集合运算
1)并:union 或者 |
2)交:intersection 或者 &
3)差:difference 或者 -
4)对称差:symmetric_difference 或者 ^




5)issuperset
6)issubset

7)isdisjoint 判断两个集合是否不相交

(6)集合的应用

2、字典

(1)字典的初始化

(2)字典的下标操作

字典没有切片操作

(3)字典元素的增加、修改操作
1)运用下标增加字典元素

2)update方法
使用update方法增加字典元素:


update 的参数可以是以下几种情况:
字典、由二元组构成的可迭代对象、关键字参数。
使用update方法修改字典元素:

(4)字典元素的删除操作
1)pop方法

pop不存在的索引

2)popitem方法

3)del 语句

4)clear方法

(5)字典元素的访问
1)用key来访问

2)get 方法

3)setdefault 方法,可以用来增加字典元素

4)defaultdict 方法



(6)字典元素的遍历
1)for in 循环遍历key

2)keys 方法

字典的keys方法返回dict_keys类型。
3)dict_keys

4)values 方法

字典的values方法返回dict_values类型。
5)items方法

字典的items方法返回dict_items类型。
6)用字典生成迭代器

7)OrderedDict


(7)字典的其他方法
1)查看字典有哪些方法:

dir(d)

2)copy 方法

3)fromkeys 方法

3、解析式

每个解析式都可以转化成一个或多个for循环语句,但解析式的执行速度更快。
(1)列表解析
在这里插入图片描述


1)列表解析的一般形式





2)filter函数和map函数与列表解析的性能比较
filter函数与列表解析的性能比较:

map函数与列表解析的性能比较:


(2)生成器解析
对列表解析来说,只需要简单的把中括号换成小括号就可以了。
生成器解析式是按需计算的或者说延迟计算的或者叫惰性求值。




(3)集合解析


(4)字典解析


(5)zip 函数

help(zip)

4、迭代器

可迭代对象:列表、元组、集合、字典、字符串、bytes、bytearray、生成器对象、range对象、zip对象、filter对象、map对象、字典产生的dict_keys对象、dict_values对象、dict_items对象都是可迭代对象。
可迭代对象可用于for in表达式, 可以使用成员运算符(in 和 not in)。

iter函数把可迭代对象转化为迭代器,next函数从迭代器里取出元素。
迭代器是一类对象,叫迭代器对象。


list对象不是迭代器对象,不能用next函数取下一个值。

发布了219 篇原创文章 · 获赞 603 · 访问量 129万+

猜你喜欢

转载自blog.csdn.net/gongxifacai_believe/article/details/95248278