更改

跳转至: 导航搜索

在Python中进行切片

添加482字节, 2020年12月18日 (五) 20:00
无编辑摘要
1.新建一 个list.个列表(list),列表名称为list1,内容为['mike','jack','jinke','zhangsan','lisi','wangwu','zhaoliu']。
[[File:Python3Slice1.png]]
2.输入“list1[0:3]”即可输出索引0到索引2的元素(不包括索引为3的元素),输入“list1[:3]”同样效果(首位索引为0时可省略)。
[[File:Python3Slice2.gif]]
3.输入“list1[2:5]”即可输出索引2到索引4的元素(不包括索引为5的元素),输入“list1[2:6:2]”即可将索引2到索引5的元素每2个输出1个(6后面的:2即表示每2个输出1个)。
[[File:Python3Slice3.gif]]
4.输入“list1[::2]”即可每2个元素输出一个,输入“list1[::-2]”即可倒序每2个元素输出一个。
[[File:Python3Slice4.gif]]
对应上面 5.输入“list1[2::-1]”即可从索引为2 问题 元素(jinke)开始倒序输出 取前3个 输出内容为“['jinke','jack','mike']”。 输入“list1[2:0:-1]”即可从索引为2的 元素 (jinke)开始倒序输出(不包括索引为0的mike) 用一行代码就可以完成切片:输出内容为“['jinke','jack']”。[[File:Python3Slice5.gif]]
>>> L 6.输入“list1[0:35]”即可从索引为0(索引为0可省略)的元素(jinke)开始输出(不包括索引为5的元素),输出内容为“['Michaelmike', 'Sarahjack', 'Tracyjack','zhangsan','lisi']”。L 输入“list1[0-5:3] 表示, ”即可 从索 引0 引为-5(倒数第5个)的元素(jinke) 开始 输出 直到索引3 输出内容 止,但不包括索引3。即索引0,1,2,正好是3个元素 “['jinke','zhangsan','lisi','wangwu','zhaoliu']” [[File:Python3Slice6.gif]]
如果第一个索引是0,还可以省略:
>>> L[:3]
['Michael', 'Sarah', 'Tracy']
也可以从索引1开始,取出2个元素出来:
 
>>> L[1:3]
['Sarah', 'Tracy']
类似的,既然Python支持L[-1]取倒数第一个元素,那么它同样支持倒数切片,试试:
 
>>> L[-2:]
['Bob', 'Jack']
>>> L[-2:-1]
['Bob']
记住倒数第一个元素的索引是-1。
 
切片操作十分有用。我们先创建一个0-99的数列:
 
>>> L = list(range(100))
>>> L
[0, 1, 2, 3, ..., 99]
可以通过切片轻松取出某一段数列。比如前10个数:
 
>>> L[:10]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
后10个数:
 
>>> L[-10:]
[90, 91, 92, 93, 94, 95, 96, 97, 98, 99]
前11-20个数:
>>> L[10:20]
1,138
个编辑

导航菜单