我正在尝试在python中创建一个3x3矩阵类。我无法正确初始化2D阵列。在Python中初始化类中的二维数组
在下面的代码中,我得到一个错误,表示Matrix3x3没有属性m。如果我在init之前初始化m,它看起来像'm'就像一个静态变量,我不想要。
class Matrix3x3:
#[1 0 0]
#[0 1 0]
#[0 0 1]
def __init__(self, m):
#self.m[row][column]
self.m[0][0] = m[0][0];
self.m[0][1] = m[0][1];
self.m[0][2] = m[0][2];
self.m[1][0] = m[1][0];
self.m[1][1] = m[1][1];
self.m[1][2] = m[1][2];
self.m[2][0] = m[2][0];
self.m[2][1] = m[2][1];
self.m[2][2] = m[2][2];
不要添加'm'作为参数init..just在构造函数中声明m – Abhi 2014-10-03 18:08:02
[在Python中定义类变量的正确方法]的可能重复(http://stackoverflow.com/questions/9056957/correct-way-在-python中定义类变量) – Abhi 2014-10-03 18:10:41
忘记'm',只用'self.m = [[for for xrange(3)] for _ in xrange(3)]' – 2014-10-03 18:31:47