想谈谈复制名单的事。我们将讨论Python的赋值规则
。首先我们创建一个列表a: a =
通常我们以这种方式复制一个元素:b = a #复制一个元素的一般方法
print(a)
print(b)
结果
通过这一行代码,我们创建了一个与列表a相等的列表b,但此时有一个问题:
事实上,作弊已经悄悄地发生了~
。让我们试着打印列表A的值:打印(a)
。结果是:
可见。列表A的排序也改变了
,这不一定是我们希望看到的结果
。原因是:
当我们使用代码“b=a”给列表B赋值时,列表B和列表A指向同一个地址,并且排序列表不会给列表分配新的地址,也就是说,此时我们是在排序列表A还是列表B。另一个列表的排序也将改变
。如果我们给列表A或列表B赋值,那么就没有这样的问题,因为当赋值时,列表将被分配一个新的地址
。那么我们如何解决这个问题呢?
非常简单,只需要使用列表的片段,下面的代码用于复制列表:
1,2
此时,我们将颠倒列表b的顺序:
1,2
可以看到只有列表b的顺序发生了变化,而列表a的顺序没有变化。那是因为列表a和列表b不再有那种不能被削减、调整和混淆的限制。
。最后,边肖是一名python开发工程师。在这里,我编写了一套最新的python系统学习教程,包括从基本python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。那些想要这些资料的人可以密切关注小编辑,并在后台私下写一个小编辑:“01”可以接收它们。