Bitswapper wrote: > > So I have a parent and child class: > > > class Map(object): > def __init__(self, name=''): > self.mapName = name > self.rules = {} > > class Rule(Map): > def __init__(self, number): > Map.__init__(self) > self.number = number
This means that rules will never have a name. I think you need def __init__(self, name='', number=None): Map.__init__(self, name) self.number = number > > def __repr__(self): > return "Map " + self.mapName + " rule number " + str(self.number) > > if __name__ == "__main__": > map = Map("thismap") > rule = Rule(1) > map.rules[rule.number] = rule > > > > with the above: > $ python -i inherit.py > >>> map > <__main__.Map object at 0xb7e889ec> > >>> map.rules > {1: Map rule number 1} > >>> map.rules[1] > Map rule number 1 > >>> > > > I have tried adding: > map.rules[2] = Rule(2) > > but that still gets: > > $ python -i inherit.py > >>> map.rules > {1: Map rule number 1, 2: Map rule number 2} > >>> > > and: > map.rule = Rule(3) > > which also doesn't really get me what I'm looking for: > > >>> map.rules > {1: Map rule number 1, 2: Map rule number 2} > >>> map.rule > Map rule number 3 > >>> > > > It seems to me what I'm trying to do is link an arbitrary child instance to > an arbitrary instance of a > parent class, which in this case would be handy Because I'd like to populate > a map with rules and > print the rules including the parent map name for each rule. I'm just not > sure how I would go about > doing this in python. > > Any thoughts are welcome, and thanks in advance I not sure what you mean by the above. Can you provide an example of what you want to occur and the output for it? ~Ramit This email is confidential and subject to important disclaimers and conditions including on offers for the purchase or sale of securities, accuracy and completeness of information, viruses, confidentiality, legal privilege, and legal entity disclaimers, available at http://www.jpmorgan.com/pages/disclosures/email. -- http://mail.python.org/mailman/listinfo/python-list