首页IT科技python切片可以获取几个什么(python中切片的浅拷贝探究)

python切片可以获取几个什么(python中切片的浅拷贝探究)

时间2025-04-30 15:54:53分类IT科技浏览6708
导读:本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。...

本文教程操作环境:windows7系统            、Python 3.9.1            ,DELL G3电脑            。

1                  、浅拷贝说明

浅拷贝                  ,拷贝了最外围的对象本身      ,内部的元素都只是拷贝了一个引用而已                  。也就是         ,把对象复制一遍                  ,但是该对象中引用的其他对象我不复制      。

2      、切片拷贝实例

切片操作的返回结果是一个新的独立的序列         。以列表为例         ,列表切片后得到的还是一个列表      ,占用新的内存地址                  。

当取出切片的结果时                  ,它是一个独立对象            ,因此   ,可以将其用于赋值操作                  ,也可以用于其它传递值的场景         。但是               ,切片只是浅拷贝,它拷贝的是原列表中元素的引用               ,所以                  ,当存在变长对象的元素时   ,新列表将受制于原列表      。

li=[1,2,3,4] ls=li[::] li==ls#True id(li)==id(ls)#False li.append(li[2:4])#[1,2,3,4,[3,4]] ls.extend(ls[2:4])#[1,2,3,4,3,4] #下例等价于判断li长度是否大于8 if(li[8:]): print("notempty") else: print("empty") #切片列表受制于原列表 lo=[1,[1,1],2,3] lp=lo[:2]#[1,[1,1]] lo[1].append(1)#[1,[1,1,1],2,3] lp#[1,[1,1,1]]

由于可见            ,将切片结果取出                  ,它可以作为独立对象使用      ,但是也要注意         ,是否取出了变长对象的元素                  。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
ChatGPT翻译功能怎么用(ChatGPT自我分析) 任务管理器进程结束不掉怎么办(win11怎么关闭进程? Windows11进程未在任务管理器强制关闭的方法)