Python 3.x 使用随机生成的数字创建矩阵
我应该创建一个大小由用户决定的矩阵,并使用random.uniform为该矩阵中的每个元素生成一个随机浮点。上面是我的代码,但它将生成的所有数字放在矩阵之外(将它们添加到列表中,而不是列表中)。列表插入添加值,而不是替换现有值 不要生成矩阵然后填充,而是使用以下值生成:Python 3.x 使用随机生成的数字创建矩阵,python-3.x,matrix,Python 3.x,Matrix,我应该创建一个大小由用户决定的矩阵,并使用random.uniform为该矩阵中的每个元素生成一个随机浮点。上面是我的代码,但它将生成的所有数字放在矩阵之外(将它们添加到列表中,而不是列表中)。列表插入添加值,而不是替换现有值 不要生成矩阵然后填充,而是使用以下值生成: import random def list_2d_generate(rows, columns, low_range, high_range): float_list = [] matrix1 = [[0]*c
import random
def list_2d_generate(rows, columns, low_range, high_range):
float_list = []
matrix1 = [[0]*columns for i in range(rows)]
for i in range(rows):
for j in range(columns):
floats = random.uniform(low_range, high_range)
matrix1.insert(j, floats)
return matrix1
请尝试以下方法:
import random
def list_2d_generate(rows, columns, low_range, high_range):
return [
[random.uniform(low_range, high_range)
for _ in xrange(columns)]
for _ in xrange(rows)]
样本输出:
import random
def makematrix(x,y,minnum, maxnum):
matrix = []
for row in range(x):
matrix.append([])
for col in range(y):
matrix[row].append(random.uniform(minnum,maxnum))
return matrix
print(makematrix(4,4,0,100))
有没有一种方法可以将输出的格式设置为实际上看起来像一个矩阵,并且没有[]括号?您可以使用一对
for
循环遍历该矩阵,然后按照自己的意愿设置格式。这只是打印列表时的默认格式
[[44.75502455476652, 28.664480955351777, 32.656439723011175, 3.9675096554774303] [61.990473239473566, 55.16751027710425, 62.20529230301345, 53.641004392485584], [1.4753516149572543, 8.391386895268615, 61.87234529817771, 11.364854440314732], [21.122758368045947, 62.155653114217145, 85.20532313391281, 97.60326478339135]]