文章目录
前言
python编程风格也叫Pythonic,这一系列文章记录学习点滴。
一、切片操作是什么
在 Python 里, 像列表(list)、元组(tuple)和字符串(str)这类序列类型都支持切片操作。 在切片和区间操作里不包含区间范围的最后一个元素,这也是python的一种风格,这个习惯符合Python、C和其他语言里以0为起始下标的传统,这样做能带来的好处如下:
- 当只有最后一个位置信息时, 我们也可以快速看出切片和区间里有几个元素: range(3) 和 my_list[:3] 都返回 3 个元素。
- 当起止位置信息都可见时, 我们可以快速计算出切片和区间的长度, 用后一个数减去第一个下标(stop - start) 即可。
- 这样做也让我们可以利用任意一个下标来把序列分割成不重叠的两部分, 只要写成 my_list[:x] 和 my_list[x:] 就可以了。
>>> my_list = [1,2,3,4,5,6]
>>> my_list[:2] # 在下标2的地方分割
[1, 2]
>>> my_list[2:]
[3, 4, 5, 6]
并且我们可以用s[a : b : c] 的形式对 s 在 a 和 b之间以 c 为间隔取值。 c 的值还可以为负, 负值意味着反向取值,下面有一个直观的例子
>>> s = 'bicycle'
>>> s[::3]
'bye'
>>