我制作了一个空列表,并尝试将对象追加到该列表。但这并没有我预期的那样。
initial_x = [0, 0.2, 0.5, 1.0, 1.2]
initial_y = [0, 0.2, 0.5, 1.0, 1.2]
xstore = [[]]*len(initial_x)*len(initial_y)
ystore = [[]]*len(initial_x)*len(initial_y)
for i in range(len(initial_x)):
for j in range(len(initial_y)):
xstore[i*5+j].append(initial_x[i])
然后给出
0,
0,
0,
0.2,
0.2,
0.2,
0.2,
0.2,
0.5,
0.5,
0.5,
0.5,
0.5,
1.0,
1.0,
1.0,
1.0,
1.0,
1.2,
1.2,
1.2,
1.2,
1.2],
,依此类推。 这根本不是我想要的结果。
但是当我喜欢自己的代码时,我发现了这一点。
testing=[[]]*3
testing
Out[67]: [[], [], []]
testing[0].append(1)
testing
Out[69]: [[1], [1], [1]]
而
testing_2 = [[],[],[]]
testing_2[0].append(1)
testing_2
Out[64]: [[1], [], []]
我希望我的代码像上面那样做,而不是在每个测试[0],测试[1]和测试[2]中加1。我应该如何更改代码以使其类似于“ testing_2”?