> I thought that when I wrote fc1 = FlightCondition() in the function it
> would create a new FlightCondition object which would be passed back
> every time.
> Instead it seems to re-reference the old version and continue to add
> to it.
That is exactly what is happening. You have created a class with two
_class_ attributes that are lists. These attributes are attached to
the _class_ not the instance that was created. You are simply mutating
the list that is attached to the class.
You really want to do something like this:
class FlightCondition(object):
def __init__(self):
self.lsf = [0,'Low Speed Flare']
self.vto = [0,'Vertical Take-Off']
Other than that, its hard to tell what you are actually trying to do,
but likely get_flight_condition could become a method of the
FlightCondition class.
Matt
--
http://mail.python.org/mailman/listinfo/python-list