我正在尝试找到一种返回任意数量的NxN矩阵的更简洁的方法。 现在我正在使用这个功能
from numpy import matrix, zeros
def empty_matrix( dim, num ):
"""Returns an empty square matrix of type complex and size a."""
if num == 1:
return matrix(zeros(shape =( dim, dim ), dtype=complex))
else:
return [ matrix(zeros(shape =( dim, dim ), dtype=complex)) for _ in range( num )]
以下列方式:
A,B,C = empty_matrix( 2, 3 ) # sets A, B, C as 3 2x2 matrices
我试图找出是否有办法避免使用if / else语句。有什么想法吗?
答案 0 :(得分:1)
删除if num == 1
,并使用1-element-tuple-unpacking:
A,B,C = empty_matrices( 2, 3 ) # sets A, B, C as 3 2x2 matrices
A, = empty_matrices( 2, 1 ) # sets A as a 2x2 matrix