Я пытаюсь создать класс матрицы 3x3 в python. У меня возникают трудности с инициализацией 2D-массива.Инициализировать 2D-массив в классе в Python
В следующем коде появляется сообщение о том, что Matrix3x3 не имеет атрибута m. Если я инициализирую m до init, кажется, что «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
возможной дубликат [правильный способ определения переменных класса в Python] (http://stackoverflow.com/questions/9056957/correct-way- to-define-class-variables-in-python) – Abhi
забыть о 'm' и просто использовать' self.m = [[0 для _ в xrange (3)] для _ в xrange (3)] ' –