def matrix_generator(n_rows, n_columns):
if n_columns < 10:
print('Number of rows need to be greater than or equal to 10.')
return 0
row_list = [1,1,1,1,1,1,1,1,1,1]
add_columns = n_columns-10
for i in range(add_columns):
row_list.append(0)
matrix = [[]]*n_rows
for i in range(n_rows):
random.shuffle(row_list)
matrix[i] = row_list[:]
random.shuffle(matrix)
return matrix
4条答案
按热度按时间evrscar21#
这不一定是最有效的方法,但它很简洁:
7dl7o3gd2#
或者,分配0和1的数组,并对每行进行混洗:
zwghvu4y3#
您可以为每行随机抽取10个索引
也可以预定义一行
k5hmc34c4#
您可以使用下面的函数来获得一个随机矩阵,其中包含1和0,并且行和等于10: