012python视频课后作业求教
>>> old =>>> new = old
>>> old =
>>> print(new)
这个题目的答案是会打印:
请问是为什么呀? 不应该是打印6吗?
好像会跟着变吧?因为是new = old这个形式,而不是new=old[:] 本帖最后由 sunrise085 于 2020-3-23 23:08 编辑
python定义变量就是贴标签,给该变量就是把标签撕下来贴到另一个上面去。
看图:
可以看看我总结的一个帖子:python细节之2、变量名与标签 变量的赋值与修改 应该是因为old=这个语句意思是old赋予了一个新的数列,并没有影响到 这个原数列,所以new没有变化 >>> old = # old 指向列表
>>> new = old # new 与 old 一起指向列表
>>> old = # old 指向列表 ,从此,old 与 new 分道扬镳
>>> print(new) # new 依然指向列表 用老师的说法来形容吧
old = # 上有个标签 old
new = old # new这个标签也贴在了 上
old = # # 把old便签贴在了 上
如果还不懂你把 看成苹果 , 看成橘子。最后你看标签在哪就对了。 new是在old重新赋值之前被赋值的,所以在new = old之后,old再重新赋值,对之前的new不会发生影响
如果按你说的打印new也是,那么你就要在old=之后,再写一遍new=old
页:
[1]