Python List 切片操作

您所在的位置:网站首页 python系列的切片操作 Python List 切片操作

Python List 切片操作

2023-03-26 22:15| 来源: 网络整理| 查看: 265

本文共 824 字,大约阅读时间需要 2 分钟。

前沿 今天在做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:5:2][1,3,5]  #step为2>>>s[3:0:-1][4,3,2]  #step为-1,注意从start_index开始从“右往左”移动#列表类型的元素可以是混合的>>>mix_list=[4.0, [1, 'x'], 'beef', (-1.9+6j)]>>> mix_list[1] [1, 'x']#多层切片 (仍然使用mix_list>>>mix_list[1][1]'x'>>>mix_list[1][1]=99>>>mix_list[4.0, [1, 99], 'beef', (-1.9+6j)] 二. 切片的复制和引用

这部分就是我此题出错原因之一

>>>a=[1,2,3]>>>id(a)4393900104>>>b=a#直接赋值>>>id(b)4393900104   #b也指向a指向的地址,所以对b的操作会影响到a>>>b[0]=5>>>b[5,2,3]>>>a[5,2,3]>>>c=a[:] #使用切片进行复制操作>>>id(c)4393899912   #此时c和a不一样,对c的操作影响不到a>>>c[0]=9>>>c[9,2,3]>>>a[5,2,3] 参考博客

(https://www.jianshu.com/p/15715d6f4dad)

转载地址:https://blog.csdn.net/qq_39751320/article/details/104255600 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3