繁体   English   中英

如何在不使用 Python 中的 Numpy 的情况下从给定列表创建矩阵

[英]How to create a matrix from a given list without using Numpy in Python

我检查了在没有 numpy 的情况下在 Python 中创建矩阵中的解决方案,但这只是解决方阵。 那是 3x3 或 4x4。

例如,我用以下几行尝试了这些问题的答案,它给出了列表索引超出范围错误。

random_list = random.sample(range(10,99), 10)
print(len(random_list))
mat = createMatrix(5,2,random_list)
print (mat)

我的问题是一个带有数字的列表,如何将其放入矩阵中。

例如

column = input("No of Column: ")
rows = input("No of Rows: ")
randomDataList = random.sample(range(10,99), int(column)* int(rows))
createMatrix(int(column), int(rows), randomDataList)

列表理解的另一种方式:

import random
column = input("No of Column: ")
rows = input("No of Rows: ")
n, m = int(rows), int(column)
randomDataList = random.sample(range(10,99), n*m)
print([[randomDataList[i+m*j] for i in range(m)] for j in range(n)])

您可以使用列表推导来构建列表列表 -

import random

r, c = 4, 5

l = random.sample(range(-10,10),r*c)

matrix = [l[i:i + int(r*c / c)] for i in range(0, len(l), int(r*c / c))]
print(matrix)
[[-10, -4, 7, 4], [1, 9, -5, 6], [-8, 5, 3, -9], [-2, 2, 8, -7], [0, -6, -1, -3]]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM