文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python 列表切片详解

2023-09-24 17:40

关注

一、列表切片

     切指–将某些东西切成小块。列表切片是从原始列表中提取列表的一部分的过程。在列表切片中,我们将根据所需内容(如,从何处开始,结束以及增量进行切片)剪切列表。

     Python中符合序列的有序序列都支持切片(slice),例如列表,字符串,元组。

 存储对象[start : end : step] 

   参数:

start : 起始索引,从0开始,-1表示结束

end:结束索引,不包含

step:步长;步长为正时,从左向右取值。步长为负时,反向取值

 

 二、列表切片使用

  (1)根据位置信息提取列表中的元素

ll = [5, 17, 13, 14, 8, 19, 3, 7, 9, 12]print(ll)#显示从中间到尾部的数ss=int(len(ll)/2)print(ll[ss:])#最后一个print(ll[-1])#最后2个print(ll[-2:])#取3-8数print(ll[2:8])#取1-10中奇数 13579print(ll[::2])#取1-10中偶数 246810print(ll[1::2])'''切片健壮性的体现'''# 使用切片操作就不会产生该问题,会自动截断或者返回空列表。print(ll[0:20:3])#就是说,不会产生下标越界问题print(ll[21:])

 

  (2) 使用切片逆序列表- 反转列表 (Reverse a List)

 # 通过省略开始索引和停止索引并将步骤指定为 - 1 来反转列表  ll = [5, 17, 13, 14, 8, 19, 3, 7, 9, 12]  print(ll)  print(ll[::-1])

 

 (3)修改多个列表元素值-可以使用切片赋值一次修改多个列表元素

 ll = [5, 17, 13, 14, 8, 19, 3, 7, 9, 12]  print(ll)   #修改多个列表项  ll[1:3]=['pop','up']  print(ll)   #替换多个元件以代替单个元件  ll[-1:]=[True,False]  print(ll)

  

(4)插入多个列表元素 -在列表中插入项目,而无需替换任何内容

ll = [5, 17, 13, 14, 8, 19, 3, 7, 9, 12]  print(ll)  # 在第一个位置插入多个列表项  ll[:0]=['a','b']  print(ll)  # 通过指定切片的开始索引和停止索引将元素插入到列表的中间。  mid=int(len(ll)/2)  ll[mid:mid]=['ok','no']  print(ll)

 

 (5)删除多个列表元素

# 将适当的切片赋值给空列表来删除列表中间的多个元素。  ll = [5, 17, 13, 14, 8, 19, 3, 7, 9, 12]  print(ll)  # 删除多个列表项  ll[5:]=[]  print(ll)  # 也可以将del语句用于切片。  del ll[2:4]  print(ll)

 

(6)克隆或复制列表

  # 可以使用切片运算符复制列表(也称为浅拷贝)。  ll = [5, 17, 13, 14, 8, 19, 3, 7, 9, 12]  print(ll)  # 第一种方法:  ll2=ll[:]  print(ll2)  print(ll2 is ll)  # 第二种方法:  ll2=list(ll)  print(ll2)  # 第三种方法:  import copy  # 浅拷贝  nll2 = copy.copy(ll)  print(nll2 ,nll2 is ll)  # # 深拷贝  nll3 = copy.deepcopy(ll)  print(nll3 ,nll3 is ll)

 

 

 

来源地址:https://blog.csdn.net/hlx20080808/article/details/127610664

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯