|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
0. 注意,这道题跟上节课的那道题有点儿不同,回答完请上机实验或参考答案。
>>> old = [1, 2, 3, 4, 5]
>>> new = old
>>> old = [6]
>>> print(new)
根据上一节课的作业来看,小甲鱼说过,通过分片操作是建立了原列表的副本,不随原列表的改变而改变,而通过赋值的方式创建的新列表,其实指向的内容还是原列表,这道题显示创建了一个old列表,之后用赋值的形式创建了new列表,那么原来的old列表发生改变后,为什么new没有发生改变哪?和之前讲的有冲突啊。
列表名称old只是一个标签,它指向列表[1,2,3,4,5]如果这时我们再写old=new,那么new也指向[1,2,3,4,5]。
题目是直接将old名称附给了另一个列表,而这不管new的事,new还是指向[1,2,3,4,5]
给你上代码你就明白了 - a = [1, 2, 3]
- b = a
- a.append(4)
- print a
- [1, 2, 3, 4]
- print b
- [1, 2, 3, 4]
复制代码
一个是修改列表一个是修改名字。
|
|