new to python - trouble calling a function from another function
Brandon McCombs
none at none.com
Thu Aug 5 03:25:36 EDT 2010
Hello,
I'm building an elevator simulator for a class assignment. I recently
ran into a roadblock and don't know how to fix it. For some reason, in
my checkQueue function below, the call to self.goUp() is never executed.
It is on the last line of code I pasted in. I can put print statements
before and after the call and I have a print statement in goUp() itself.
Only the print statements before and after the call are executed. The
one inside goUp() is never executed because goUp() never seems to be
executed. How can that be? I don't get any errors when the script
executes. Surely this isn't some limitation I'm encountering?
thanks
sorry about the formatting
---------------------------------------------
class Elevator(Process):
def __init__(self,name):
Process.__init__(self,name=name)
self.numPassengers = 0
self.passengerList = []
self.passengerWaitQ = []
self.currentFloor = 1
self.idle = 1
self.newPassengers = 0
def goUp(self):
print "here"
bubbleSort(self.passengerList, len(self.passengerList))
self.currentFloor += 1
if len(self.passengerList) > 0:
for p in self.passengerList:
if self.currentFloor == p.destination:
yield (p.destination - self.currenteFloor) * TRAVELTIME, self
reactivate(p)
p.inBuilding()
else:
self.goUp()
def checkQueue(self):
if (len(self.passengerWaitQ)) > 0 and len(self.passengerList) <
MAXCAPACITY:
if len(self.passengerWaitQ) < MAXCAPACITY:
self.newPassengers = len(self.passengerWaitQ)
else:
self.newPassengers = MAXCAPACITY - len(self.passengerList)
for i in range(0,self.newPassengers):
self.passengerList.append(self.passengerWaitQ.pop())
self.goUp()
More information about the Python-list
mailing list