python sparse matrix

Help
christine
2007-11-10
2013-05-20
  • christine
    christine
    2007-11-10

    hi i'm new to python and i have to create a dictionary based sparse matrix. This is my code so far; but unfortunately my output are all zeros and i have no columns. I really need to get this error fixed since i need to add and multiply matrices. Is there anyone that could please help.

    class GeneralSparse1:
        def __init__(self, mtx={}, m=3, n=3):
            self.matrix = {}
            self.m = m
            self.n = n
            self.matrix.update(mtx)
          
        def __getitem__(self, ij):
            return self.matrix.get(ij,0)  
        def __setitem__(self, ij, val):
            self.matrix[i,j] = val
        def __str__(self):
            s = "["
            if self.m> 0:
                for i in range(self.m):
                    s += str(self[i])
                    if i < self.m:
                        s += ", "
            for j in range(self.n):
                        s += str(self[j])
            s += "]"
            return s

    My output :

    from GeneralSparse1 import *
    >>> if __name__=="__main__":
        x = GeneralSparse1({(2,1):1.0}, 2, 3)
        y = GeneralSparse1({(2,1):1.0}, 2, 3)
        print x
        print y

       
    [0, 0, 000]
    [0, 0, 000]