官方手册:https://docs.python.org/3.7/library/stdtypes.html#sequence-types-list-tuple-range
序列简介
序列是指按照位置顺序来存储数据的数据结构,也就是说能通过数值索引进行操作。实际上,python对序列的解释是:只要类型对象中重载了__len__()和__getitem__(),且它们的整数参数从0开始,就表示这个类型满足序列协议,是一个序列类型。
python有三种基本的序列类型:列表、元组和range对象。当然,还有特别定制的序列类型:str和binary data。
序列类型又分为可变序列和不可变序列。可变序列表示可以原处修改的序列,不可变序列意味着不允许原处修改。例如,列表是可变序列,字符串是不可变序列。
可变对象和不可变对象的含义,参见python可变对象和不可变对象的解释。
序列的通用操作
下面这些操作是序列通用的,无论是可变、不可变序列。但通用并不意味着所有序列都支持这些操作,有些特殊的序列因为某些原因不支持某些操作也是合理的。
注意:python中序列操作在索引越界的时候都会报错。
1.测试元素是否存在
x in S和x not in S,返回True或False。例如:
1 2 3 4 5 6 7 8 >>> 'a' in "abcd" True >>> 'aa' in "abcd" False >>> 'ab' in "abcd" True >>> 3 in [1,2,3,4] True2.加法和乘法符号
S1 + S2或S * N或N * S,其中S1和S2是同一种序列类型,N表示序列的重复次数。
例如:
1 2 3 4 5 6 7 >>> [1,2] + [3,4] [1, 2, 3, 4] >>> [1,2] * 3 [1, 2, 1, 2, 1, 2] >>> 3 * [1, 2]
