小编典典

python按值列出而不是通过引用

all

举个例子

a=['help', 'copyright', 'credits', 'license']
b=a
b.append('XYZ')
b
['help', 'copyright', 'credits', 'license', 'XYZ']
a
['help', 'copyright', 'credits', 'license', 'XYZ']

我想在列表“b”中附加值,但列表“a”的值也发生了变化。
我想我不知道为什么会这样(python 通过引用传递列表)。
我的问题是“如何按值传递它,以便附加 ‘b’ 不会改变 ‘a’ 中的值?”


阅读 60

收藏
2022-07-14

共1个答案

小编典典

你不能在 Python 中按值传递任何东西。如果您想复制a,您可以明确地这样做,如官方 Python
常见问题解答
中所述:

b = a[:]
2022-07-14