我想使用block_diag
来制作块对角矩阵
多个矩阵。
假设我有矩阵A
,B
和C
。我可以简单地写一下:
block_diag(A, B, C)
但是,我希望以后有更多的矩阵。
如何将A
,B
和C
合并到一个矩阵列表X
中,以便
我可以写:
block_diag(X)
我尝试使用[A, B, C]
,但这不起作用。
答案 0 :(得分:1)
使用星号运算符(*
),它将迭代的内容展开为位置函数参数。 (我选择使用不可变的tuple,但列表[A, B, C]
同样可以正常工作。)
X = (A, B, C)
print(block_diag(*X))