所以我试过直接从文档中复制下面的代码,在我看来这个函数没有做到它应该做的事情:
import sympy as sp
M = sp.Matrix(3,3,lambda i,j: i+j)
V = sp.Matrix.zeros(3, 1)
M.col_insert(1,V)
print(M)
给出输出
Matrix([[0, 1, 2], [1, 2, 3], [2, 3, 4]])
不是根据文档link。
[0, 0, 1, 2]
[1, 0, 2, 3]
[2, 0, 3, 4]
对于row_insert也一样。
我做错了什么?
答案 0 :(得分:2)
在版本3(及更早版本)中,我得到以下内容
>>> import sympy as sp
>>> M = sp.Matrix(3,3,lambda i,j: i+j)
>>> V = sp.Matrix.zeros(3, 1)
>>> M.col_insert(1,V)
Matrix([
[0, 0, 1, 2],
[1, 0, 2, 3],
[2, 0, 3, 4]])
>>> print(M)
Matrix([[0, 1, 2], [1, 2, 3], [2, 3, 4]])
M
未进行修改,使用col_insert
方法创建新矩阵 - 请注意,在该命令后我没有打印任何内容,新的矩阵由命令本身返回。另一方面,方法col_del
就位:
>>> M.col_del(0)
>>> M
Matrix([
[1, 2],
[2, 3],
[3, 4]])