矩阵 SageMath 的深层复制

Deepcopy of a Matrix SageMath

我正在 SageMath 中创建矩阵的深度复制。

import copy
A = Matrix([[1,2],[3,4]]).augment(Matrix.identity(2), subdivide=True)
B = copy.deepcopy(A)
print A
print B

给我:

[1 2|1 0]
[3 4|0 1]

[1 2 1 0]
[3 4 0 1]

用细分深度复制矩阵的正确方法是什么?我必须使用:

B.subdivide(*A.subdivisions())

SageMath 7.2 版,发布日期:2016-05-15

tmonteil 在 https://ask.sagemath.org/question/36134/deepcopy-of-a-matrix-sagemath/?answer=36137#post-id-36137

上的回答

sage好像有自定义方法

__copy__

但不是自定义方法

__deepcopy__