【问题标题】:weird behaviour of lists of lists of variables [duplicate]变量列表列表的奇怪行为[重复]
【发布时间】:2019-12-22 11:13:00
【问题描述】:

例如,我正在创建一个列表变量列表。当我改变一个值时,整个列也改变了

data = [[False] * 5] * 5
data
[[False, False, False, False, False],
 [False, False, False, False, False],
 [False, False, False, False, False],
 [False, False, False, False, False],
 [False, False, False, False, False]]

data[3][4] = True
data
[[False, False, False, False, True],
 [False, False, False, False, True],
 [False, False, False, False, True],
 [False, False, False, False, True],
 [False, False, False, False, True]]

如果它是一个数值变量,也会发生同样的情况。为什么会这样??

【问题讨论】:

    标签: python python-3.x list boolean


    【解决方案1】:

    哦,我自己搞定了.....当我将数据设为 = [] * 5 时,我只是浅拷贝它们,因此更改了所有行。

    【讨论】:

    • 为您标记了重复以获取更多信息
    猜你喜欢
    • 2016-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-28
    • 2015-09-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多