对Python中list的倒序索引和切片实例讲解

yipeiwu_com7年前Python基础

Python中list的倒序索引和切片是非常常见和方便的操作,但由于是倒序,有时候也不太好理解或者容易搞混。

>>> nums = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> print(nums[-1])
9
>>> print(nums[-2:])
[8, 9]
>>> print(nums[:-3])
[0, 1, 2, 3, 4, 5, 6]

例如,给定一个数组nums。

索引操作 nums[-1] 还比较容易理解,切片操作 nums[-2:] 也还好,但 nums[:-3] 有时候就容易让人糊涂了。

其实,可以这么看,-2就相当于 len(nums)-2,只不过把 len(nums) 省略了,这样再进行切片操作时就比较容易理解了。

>>> length = len(nums)
>>> print(length)
10
>>> print(nums[length-1])
9
>>> print(nums[length-2:])
[8, 9]
>>> print(nums[:length-3])
[0, 1, 2, 3, 4, 5, 6]
nums[-2:],即 nums[length-2:], 即 nums[8:]

同样,nums[:-3],即 nums[:length-3], 即 nums[:7]

以上这篇对Python中list的倒序索引和切片实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python切片操作深入详解

本文实例讲述了Python切片操作。分享给大家供大家参考,具体如下: 我们基本上都知道Python的序列对象都是可以用索引号来引用的元素的,索引号可以是正数由0开始从左向右,也可以是负数...

修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法

修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法

之前把现有这台阿里CentOS7.2系统的Python2.7.5升级成Python3.6后,yum工具就不能不觉使用了。当时查了下说明python版本的问题,但是用网上的方法还是没解决,...

python 实现手机自动拨打电话的方法(通话压力测试)

现在能用自动化实现的,尽量使用自动化程序去操作,代替人工去操作,更有效率。 今天说下用python结合adb命令去实现安卓手机端的通话压力测试。 #操作前先在设置里打开power键可...

使用python 对验证码图片进行降噪处理

使用python 对验证码图片进行降噪处理

首先贴一张验证码上来做案例: 第一步先通过二值化处理把干扰线去掉: from PIL import Image # 二值化处理 def two_value(): for i...

python 申请内存空间,用于创建多维数组的实例

以三维数组为例 先申请1个一维数组空间: mat = [None]*d1 d1是第一维的长度。 再把mat中每个元素扩展为第二维的长度: for i in range(len(...