Python逐大小矩阵,允许输入和返回列表元素列表



我正在尝试创建一个身份矩阵,它接受输入并返回一个按大小排列的身份矩阵(一个或多个列表),只有1和0,而不使用numpy。

因此,如果用户输入:>>>matrix(4),则输出应为:[[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]

到目前为止,我已经将我的列表理解设置为:matrix = [[0 for _ in range(3)] for _ in range(3)]

任何关于如何建立我的理解能力的建议都将不胜感激。

可以将bool强制转换为int以快速获得0或1

def matrix(N):
return [[int(col == row) for col in range(N)] for row in range(N)]

最新更新