Python惯用的数据结构
Python常用的数据结构
Python常用的数据结构
1 Tuple 元组应用很广泛
- 任意对象的有序集合,这条没啥说的,数组的同性;
- 通过偏移读取;
- 一旦生成,不可改变;
- 固定长度,支持嵌套
2 list()
- 任意对象的有序集合;
- 可通过偏移存取,注意,列表中的元素都是可变的,这是不同于元组的;
- 长度可变,支持嵌套;
- 还有一些类似java 的对象引用机制
- 支持排序sort ,支持分片操作以及分片赋值这个
- 添加append ,删除 del
一些有趣的特性:
去掉列表中每个元素头尾的空格:
freshfruit = [' banana', ' loganberry ', 'passion fruit ']
[ str .strip() for str in freshfruit]
['banana', 'loganberry', 'passion fruit']
把列表中,大于 3 的元素,乘以 2 :并且过滤列表小于 3 的数字
vec = [2, 4, 6]
[2*x for x in vec if x > 3]
[8, 12]
获取 0-10 的平方
[x**2 for x in range (10)]
3 dict()
python 里的字典就像java 里的HashMap ,以键值对的方式存在并操作,其特点如下
- 通过键来存取,而非偏移量;
- 键值对是无序的;
- 键和值可以是任意对象;
- 长度可变,任意嵌套;
- 在字典里,不能再有序列操作,虽然字典在某些方面与列表类似,但不要把列表套在字典上
基本操作 len ()、 keys ()、 values ()、 items ()
对于字典的扩充,只需定义一个新的键值对即可,而对于列表,就只能用 append 方法或分片赋值。
关于具体的用法有两个函数查看具体用法: dir (类的名字或函数名字), help (同上)