如果我有以下功能和代码:
def do_something(a, b):
a.insert(0, ’z’)
b = [’z’] + b
a = [’a’, ’b’, ’c’]
a1 = a
a2 = a[:]
b = [’a’, ’b’, ’c’]
b1 = b
b2 = b[:]
do_something(a, b)
Run Code Online (Sandbox Code Playgroud)
为什么print(a)屈服['z','a','b','c'],但打印b仍然只打印['a','b','c']?
在我所做的功能中b = b + ['z']也不z应该在列表中?
另外为什么打印a[:]不打印新列表['z','a','b','c']并打印旧列表['a','b','c']呢?