现在我正在重构一些代码,我发现了一些奇怪的东西。
我认为以下两个表达式完全相同:
list1 = [[0.00] * 5 for _ in range(5)]
list2 = [[0.00] * 5] * 5
我可以看到他们通过运行来获得相同的结果:
print(list1 == list2)
或
import numpy as np
print(np.array(list1).shape == np.array(list2).shape)
但在我正在修改的项目中,list2
不起作用。当我使用它时,它会提升“索引超出范围”。
如我所说,请告诉我'list1 == list2',或者我是否错了。
提前致谢。
P.S。我可以使用numpy.zeros()
或其他一些东西,但我真的很好奇。