Python List 切片操作

本文介绍了Python中List的切片操作,包括正常切片及切片的复制与引用。强调end_index在切片时不包含对应值,并探讨了切片复制与引用的差异。
摘要由CSDN通过智能技术生成

前沿

今天在做LeetCode88题时(题目如下图所示),一开始想用切片操作快速完成,但发现对nums1的操作,只是简单的拷贝,并没有对nums1本身进行改变,输出还是[1,2,3,0,0,0]。所以在这里对python的List切片操作进行详细的总结,以后忘了方便查看。

这里插入图片描述

一.正常切片操作

slice[start_index:end_index:step]

注意:end_index并不包含该下标对应的值

>>>s=[1,2,3,4,5]
#切取单个元素
>>>s[2]  
3

#切取下标连续的列表
>>>s[0:2]
[1,2]    #默认step为1
>>>s[0</
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python中的列表切片是将原始列表中的一部分提取出来的过程。通过列表切片,我们可以根据需要选择从何处开始、结束以及增量来剪列表切片操作可以通过指定起始索引、结束索引和步长来实现。起始索引是包含在切片内的,而结束索引是不包含在切片内的。 例如,假设我们有一个列表`my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]`,我们可以使用切片来提取列表的一部分。使用`my_list[2:6]`将返回一个包含索引2到5的元素的新列表,即`[3, 4, 5, 6]`。在这个例子中,切片的起始索引是2,结束索引是6(不包含),步长默认为1。 除了返回新的列表切片操作还可以修改原始列表。例如,我们可以通过将切片赋值给一个新的列表来替换原始列表的一部分元素。使用`my_list[2:6] = [10, 11, 12, 13]`将会将索引2到5的元素替换为`[10, 11, 12, 13]`,最终得到`[1, 2, 10, 11, 12, 13, 7, 8, 9, 10]`。 此外,我们还可以使用切片来删除列表中的多个元素。例如,通过将一个空列表赋值给适当的切片,我们可以删除列表中间的多个元素。使用`my_list[5:] = []`将会删除索引5及之后的所有元素,得到`[1, 2, 3, 4, 5]`。另外,我们也可以使用`del`语句对切片进行删除操作。例如,使用`del my_list[2:4]`将会删除索引2到3的元素,得到`[1, 2, 5, 6, 7, 8, 9, 10]`。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [彻底理解Python list切片原理](https://download.csdn.net/download/weixin_38743602/12872042)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Python 列表切片详解](https://blog.csdn.net/hlx20080808/article/details/127610664)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值