main and dependent objects

andrea crotti andrea.crotti.0 at gmail.com
Thu Sep 13 08:51:17 EDT 2012


I am in a situation where I have a class Obj which contains many
attributes, and also contains logically another object of class
Dependent.

This dependent_object, however, also needs to access many fields of the
original class, so at the moment we did something like this:


class Dependent:
    def __init__(self, orig):
        self.orig = orig

    def using_other_attributes(self):
        print("Using attr1", self.orig.attr1)


class Obj:
    def __init__(self):
        self.attr1 = "attr1"
        self.attr2 = "attr2"
        self.attr3 = "attr3"

        self.dependent_object = Dependent(self)


But I'm not so sure it's a good idea, it's a bit smelly..
Any other suggestion about how to get a similar result?

I could of course passing all the arguments needed to the constructor of
Dependent, but it's a bit tedious..


Thanks,
Andrea



More information about the Python-list mailing list