擅长:python、mysql、java
<p>你创建了一个23*5的矩阵</p>
<pre><code>fil = vec[i].ubicacion
</code></pre>
<p>应该是</p>
<pre><code>fil = vec[i].ubicacion-1
</code></pre>
<p>因为ubicacion可以有从1到23的随机数。你知道吗</p>
<p>更好的是,您可以使用全局变量来定义这些参数,而不是在两个函数中硬编码它们。你知道吗</p>
<pre><code>col_limit = 5
fil_limit = 23
def crearVector(n):
vec = [None] * n
for i in range(len(vec)):
codigo = random.randint(1, 1000)
precio = round(random.uniform(1, 100000), 2)
ubicacion = random.randint(1, fil_limit)
estado = random.randint(0, 1)
cantidad = random.randint(0, 1000)
puntuacion = random.randint(1, col_limit)
vec[i] = Publicacion(codigo, precio, ubicacion, estado, cantidad, puntuacion)
return vec
def crearMatriz(vec):
mat = [[0] * col_limit for i in range(fil_limit)]
for i in range(len(vec)):
fil = vec[i].ubicacion - 1
col = vec[i].puntuacion- 1
mat[fil][col] += 1
return mat
</code></pre>