6.线性结构的切片操作
2020-12-13 本文已影响0人
Stone_説
目录
1.线性结构介绍
2.切片操作
1.线性结构特点
可迭代for ... in
len()可获取长度
可通过下标访问
可以切片
此前介绍的列表、元组、字符串、bytes、bytearray均为线性结构
2.切片操作
2.1 介绍
通过索引区间访问线性结构的一段数据
sequence[start:stop]表示返回[start,stop)区间的子序列
支持负索引
start为0,stop位末尾,均可以省略
超过上界,取到末尾;超过下界,取到开头
start一定要在stop的左边
[:]表示从头至尾,全部元素被取出,等效于copy()方法
2.2 举例
[start:stop:step]
step为步长,可以正、负整数,默认是1
step要和start:stop同向,否则返回空序列
>>> 'www.stone.com'[4:10]
'stone.'
>>> 'www.stone.com'[0:1]
'w'
>>> 'www.stone.com'[:-1]
'www.stone.co'
>>> bytearray(b'www.stone.com')[-4:10]
bytearray(b'.')
>>> bytearray(b'www.stone.com')[4:9]
bytearray(b'stone')
>>> tuple(b'www.stone.com')[4:10]
(115, 116, 111, 110, 101, 46)
>>> tuple('www.stone.com')[4:10]
('s', 't', 'o', 'n', 'e', '.')
>>> 'www.stone.com'[-4:-10]
''
>>> 'www.stone.com'[-4:-10:-1]
'.enots'