title: How to inherit same name variables from multiple parent classes?
body: <p>I ran into some problems regarding python's multiple inheritance.</p>
  
  <pre><code>class TestFather(object):
      fathers = {}
      path = "/C"
  
      def __init__(self):
          super(TestFather, self).__init__()
          # self.fathers = file_to_dict(self.path)
  
  
  class TestMother(object):
      mothers = {}
      path = "/D"
  
      def __init__(self):
          super(TestMother, self).__init__()
          # self.mothers = file_to_dict(self.path)
  
  
  class TestChild(TestFather, TestMother):
      def __init__(self):
          super(TestChild, self).__init__()
  
  
  t = TestChild()
  help(t)
  </code></pre>
  
  <p>The variable path will store the file directory for mothers and fathers. When I print out both the fathers and mothers dictionaries, I notice that mothers dictionary somehow takes all the information from fathers. After reading through Guido's blog on MRO <a href="http://python-history.blogspot.com/2010/06/method-resolution-order.html" rel="nofollow noreferrer">http://python-history.blogspot.com/2010/06/method-resolution-order.html</a> and watching Raymond Hettinger's 2015 PyCon video super is super, I realize that TestChild class only inherit the path variable from TestFather, and completely ignores the path variable from TestMother. </p>
  
  <p><strong>My Question is, is there a way for TestChild to use its two parents' respective path instead of only taking the one with higher MRO.</strong> I know changing the variable names will do the trick but as Raymond said, there has to be a better way.</p>