Python 常用数据结构
range 迭代器

list(range(1,10))是最快的方式,比列表解析还快。
colletions使用
找出列表出现元素的次数(collections.Counter())

collections.defaultdict()

operator.itemgetter()
collections.ChainMap()

itertools.permutations()
列表解析:
还要字典解析, 集合解析

列表




元组
需要注意的是:
- 元组初始化时至于一个元素需要用 t1 =(1, ),记得添加一个
,不然会和1数字歧义 - 元组也可以进行
*和+的连接操作,这一点类似列表


字典
值得注意的是:
- 用
dict.get(key, default=-1)/dict.get(key,-1)来寻找key的value,没有就返回-1 - 或者使用
dict.__contains__(key) - dict的keys()和values()和items()方法都可应用
集合操作!!!! - 字典的删除为
del dict[key], 清空为dict.clear()





- 我们可以看到这里虽然a.keys()支持集合的运算操作。

集合

-
细心的你注意到了 and ,or 和& ,| 是不一样的。
具体看下图:
a={1,2,3}
b={2,3,4}
你会发现,or和and是逻辑运算符。
a or b 为True, 那么返回,第一个为真的a或者b。
结合下图可以仔细想想!! -
& 和 | 和 ^ 都是位运算。值得一提的是,
异或运算等于不进位加法 -
( A ^ B ) ^ B = A 的互逆性质



本文深入探讨Python中常用的数据结构,包括range迭代器的高效使用,collections模块的Counter和defaultdict,以及ChainMap和itertools.permutations的运用。同时,文章详细介绍了列表解析、字典解析和集合解析的方法,以及字典和集合的高级操作。
1194

被折叠的 条评论
为什么被折叠?



