1 # the program aim to differentiate the defference of a=b or a=b[:] 2 my_fruits=["apple","banana","juice"] 3 your_fruits=my_fruits; 4 we_fruits=my_fruits[:] 5 print(your_fruits) 6 my_fruits.append("mango") 7 print(your_fruits) 8 print(we_fruits)
上述代码运行结果为:
可以发现,如果采用直接列表相等的赋值方式,即第三行代码所示的方式,则当原列表原始变化的时候,被赋值的变量的列表内容也会发生变化。
采用第四行所用的赋值方式,相当于创建了一个列表,使得列表的元素和之前列表的元素相同,但并不等同于之前的列表,因此列表内容不会随着原列表内容发生变化而变化。