0
我最近在Python 2.7中遇到了一个奇怪的行为。改变多处理列表
>>> import multiprocessing as mp
>>> lst = mp.Manager().list()
>>> lst.append([1,2])
>>> lst.append([3,4])
>>> print(lst)
[[1, 2], [3, 4]]
>>> lst[0][1] = 123
>>> print(lst)
[[1, 2], [3, 4]]
咦?为什么多处理列表的第一个元素没有改变?它与普通列表一起工作正常!
让我们尝试一种不同的方式。
>>> lst[0] = [1,123]
>>> print(lst)
[[1, 123], [3, 4]]
好的,所以至少我有一个解决方法。但为什么第一个片段中的分配lst[0][1] = 123
不起作用?
当我现在考虑它时,这是有道理的。谢谢! –