gpt4 book ai didi

python - 使用 multiply 创建包含列表的列表

转载 作者:太空宇宙 更新时间:2023-11-03 14:25:07 25 4
gpt4 key购买 nike

>>> a = []
>>> b = [a*2]
>>> b
[[]]
>>> b = [copy.deepcopy(a)*2]
>>> b
[[]]

我正在尝试将 b 创建为由 a 的两个副本组成的列表。为什么 b 不是 [[],[]]?我怎样才能使 b[[],[]]

最佳答案

如果你想用 a 创建 b 两次:

a = []
b = [a] * 2

但请注意,列表是 mutable !

b[1].append('foo')
b
[['foo'], ['foo']]

如果你想用a的两个副本创建b:

b = [a[:] for i in range(2)]

为了更好地控制副本的性质(相对于绑定(bind)),请阅读 python copy模块文档。

关于python - 使用 multiply 创建包含列表的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21919281/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com