Determine if two dictionaries are equal Python error
===

I am creating a doubly linked structure and am having some issues with comparing if two nodes are equal. The structure is fairly complex in that it has multiple attributes including name, row, column, right, left, up, and down. If two nodes are equal they must agree on all of these attributes. I know in my __eq__ method I could simply hard code checking each attribute versus the other but I figured there would be an easier way to do it and found a way that works most of the time. Thus I have the following:


    def __init__ (self,row,col,name=None,up=None,down=None,left=None,right=None):
        self.name  = name
        self.row   = row
        self.col   = col
        self.up    = up
        self.down  = down
        self.left  = left
        self.right = right

    def __eq__ (self, other):
        return vars(self) == vars(other)

And various other methods that aren't really important to this. So my shortcut for determining whether two Nodes was to basically look at the dictionary of their variables and let python compare the two dictionaries for equivalence.

This works great! As long as the two nodes are actually equal. It returns True and I go on my merry way with my code. BUT if the two nodes are actually not equal it falls apart. I get 

    File "*filename*", line 35 in __eq__ return vars(self) == vars(self) 

written to the screen numerous amounts of times until it finally says

    RuntimeError: maximum recursion depth exceeded

I know there are some ways around this, i.e. I could explicitly check each attribute, but that's lame and I want to know why this isn't working, and if it can be easily fixed. I have tested this method with other simpler dictionaries and it works so my thought is that the issue has something to do with determining if objects are equal but I have no idea what I could do here. I realize I could also just do a error catch and then make that return False but something other than those two solutions would be appreciated,

Thanks,
Ian