当前位置: 首页 > news >正文

Python切片总结

基本索引
我们从Python的基本索引开始,即单个整数的索引。假设被索引的序列仍为之前提到的a,则基本索引的语法为a[index],其中index为下标。读者可能会觉得这里过于简单,但我们要强调的是Python一个语法糖:负数下标索引,即:index可以取为负数,当其为-n时,对倒数第n个元素进行索引。我们用一张表格值观展示a的索引范围。

早期的Python解释器仅支持上述a[start:stop]形式的基本切片,后来加入了下面要介绍的切片形式,扩展切片的名称也流传下来,实际上不用担心,这早已是Python所支持的标准语法。

扩展切片指的是这样的切片形式:a[start:stop:step],其中step是一个非零整数,即比简单切片多了调整步长的功能,此时切片的行为可概括为:从start对应的位置出发,以step为步长索引序列,直至越过stop对应的位置,且不包括stop本身。事实上,简单切片就是step=1的扩展切片的特殊情况。需要详细解释的是step分别为正数和负数的两种情况。

step为正数
当step为正数时,切片行为很容易理解
start和stop都是可以缺省的,在缺省的情况下,Python的行为是尽可能取最大区间,具体来说:
按照扩充索引范围的观点,start的缺省值是无穷小(​),stop的缺省值是无穷大(​)。

>>>a[0,1,2,3,4,5,6,7,8,9]>>>a[:5][0,1,2,3,4]>>>a[5:][5,6,7,8,9]>>>a[100:][]
>>>a[0,1,2,3,4,5,6,7,8,9]>>>a[0:6:2][0,2,4]>>>a[::2][0,2,4,6,8]>>>a[:-2:2][0,2,4,6]>>>a[4::2][4,6,8]

step为负数
当step为负数时,切片将其解释为从start出发以步长|step|逆序索引序列,此时,start和stop的截断依然遵循前述规则,但缺省发生一点变化,因为我们说过,在缺省的情况下,Python的行为是尽可能取最大区间,此时访问是逆序的,start应尽量取大,stop应尽量取小,才能保证区间最大,因此:

按照扩充索引范围的观点,start的缺省值是无穷大(​),stop的缺省值是无穷小(​)

>>>a[0,1,2,3,4,5,6,7,8,9]>>>a[5::-1][5,4,3,2,1,0]>>>a[:4:-2][9,7,5]>>>a[::-1][9,8,7,6,5,4,3,2,1,0]
http://www.cnnetsun.cn/news/4408.html

相关文章:

  • 重庆思庄技术分享——使用 dd 和 hdparm 进行快速磁盘性能测试
  • 考了两次阿里云ACP认证,骂醒一个是一个
  • 解锁张一鸣思维宝库:从微博记录汲取创业智慧
  • Gitleaks环境变量配置深度解析与实战应用
  • RDPWrap终极配置指南:解决Windows更新后远程桌面多用户失效问题
  • JavaScript 中基于原型和原型链的继承方式详解
  • 至今,我发现前端效率低的人都有一个通病!
  • 精准守护成长:西城微科婴儿电子秤PCBA方案深度解析
  • js循环数组写法
  • 中国独立开发者生态价值重塑:从个体创新到群体智慧的变革之路
  • 终极指南:如何用NeuTTS Air在3秒内实现完美语音克隆
  • 免费GPT-4 API替代方案深度评测:零成本AI接入实战指南
  • 弹性云主机与虚拟主机核心差异全解析:选择前必看
  • 音视频编解码库终极指南:解锁多媒体开发新高度
  • 终极指南:如何用jQuery圆形进度条插件打造惊艳网页效果
  • Realtek RTL8125 2.5G网卡驱动终极配置指南:快速安装与性能优化
  • CameraKit-Android 相机开发终极指南
  • 强力解锁密码管理:KeePassXC-Browser 5大核心优势深度解析
  • 如何选择完美开源字体:Libertinus字体家族的终极实用指南
  • M.I.B.技术革命:重新定义汽车智能系统的边界
  • 【案例】实时图形工具包GLG Toolkit:船舶机械控制HMI 方案介绍
  • GoodLink:零成本内网穿透,让远程办公更简单
  • MyBatis-Plus的乐观锁与悲观锁
  • 高分辨率视频生成难题破解:Wan2.2-T2V-A14B技术内幕揭秘
  • 接口基础知识 工具使用
  • 向华为学习,集成产品开发IPD管理体系 - 实战课程- 慕课网
  • Wan2.2-T2V-A14B生成视频版权归属问题探讨
  • 注意!中科院2区期刊疑被SCI剔除!On Hold长达15个月,重蹈总环老路?
  • 并查集与最小生成树算法深度解析:从理论基础到工程实践
  • 前后端分离一款BS美食网站系统|SpringBoot+Vue+MyBatis+MySQL完整源码+部署教程