擅长:python、mysql、java
<p>问题是,当您将一个列表添加到另一个列表时,您正在添加一个引用,因此当您稍后更改它时,它会在添加到的任何地方更改</p>
<p>在本例中,首先为dem1、2和3创建一个新列表,然后添加对它们的引用</p>
<p>在正确的<code>for</code>循环中创建列表,如下所示:</p>
<pre><code>pdd = 1 # number of node i
r = 2 # number of commodity type c
e = 1 # number of period t
dem = []
for i in range(pdd):
dem2 = []
for c in range(r):
dem1 = []
for t in range(e):
dem0 = 1000
dem1.append (dem0)
dem2.append (dem1)
dem.append(dem2)
print dem
</code></pre>
<p>您还可以使用列表理解:</p>
<pre><code>dem0 = 1000
dem = [[[dem0 for t in range(e)] for c in range(r)] for i in range(pdd)]
print dem
</code></pre>