...
Denne modulen inneholder alle variabler og funksjoner knyttet til håndtering av operand-stacken, først og fremst operands-variablen og i tillegg funksjonene som direkte leser og endrer den. I praksis er dette første del av koden fra rpncalc3.py.
Code Block |
---|
# rpncalc4core.py
operands = []
def isOperand(token):
try:
float(token)
return True
except ValueError:
return False
def printOperands():
print(operands)
def popOperands(n):
size = len(operands)
if size >= n:
result = operands[size - n : size]
global operands
operands = operands[0 : size - n]
return result
else:
return None
def pushOperand(operand):
operands.append(operand)
def plus():
ops = popOperands(2)
if not (ops is None):
pushOperand(ops[0] + ops[1])
def minus():
ops = popOperands(2)
if not (ops is None):
pushOperand(ops[0] - ops[1]) |
rpncalc4ui-modulen
Code Block |
---|
|