本文整理汇总了Python中Nodo.Nodo.tipoValor方法的典型用法代码示例。如果您正苦于以下问题:Python Nodo.tipoValor方法的具体用法?Python Nodo.tipoValor怎么用?Python Nodo.tipoValor使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Nodo.Nodo
的用法示例。
在下文中一共展示了Nodo.tipoValor方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: exitTermModule
# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import tipoValor [as 别名]
def exitTermModule(self, ctx):
if len(ctx.power()) == 2:
valorD = self.pilaValores.pop()
valorI = self.pilaValores.pop()
if self.numerico(valorD) and self.numerico(valorI):
nodo = Nodo()
if valorD.tipoValor == "FLOAT" or valorI.tipoValor == "FLOAT":
nodo.tipoValor = "FLOAT"
else:
nodo.tipoValor = "INTEGER"
nodo.valor = valorD.valor % valorI.valor
self.pilaValores.append(nodo)
print("Nuevo modulo: " + str(nodo.valor))
else:
raise RuntimeError("Error en los operandos, deben ser de tipo numerico")
示例2: exitComparisonEval
# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import tipoValor [as 别名]
def exitComparisonEval(self, ctx):
valorI = self.pilaValores.pop()
valorD = self.pilaValores.pop()
nodo = Nodo()
op = ctx.comp_op().getText()
if op == "<":
nodo.valor = valorI.valor < valorD.valor
elif op == ">":
nodo.valor = valorI.valor > valorD.valor
elif op == "==":
nodo.valor = valorI.valor == valorD.valor
elif op == ">=":
nodo.valor = valorI.valor >= valorD.valor
elif op == "<=":
nodo.valor = valorI.valor <= valorD.valor
elif op == "<>":
nodo.valor = valorI.valor <> valorD.valor
elif op == "!=":
nodo.valor = valorI.valor != valorD.valor
nodo.tipoValor = "BOOL"
self.pilaValores.append(nodo)
print("Nueva compracion: " + str(nodo.valor))
示例3: exitAndTest
# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import tipoValor [as 别名]
def exitAndTest(self, ctx):
if len(ctx.not_test()) == 2:
valorD = self.pilaValores.pop()
valorI = self.pilaValores.pop()
if valorD.tipoValor == "BOOL" and valorI.tipoValor == "BOOL":
nodo = Nodo()
nodo.tipoValor = "BOOL"
nodo.valor = valorD.valor and valorI.valor
self.pilaValores.append(nodo)
print("Nuevo ORT: " + str(nodo.valor))
else:
raise RuntimeError("Error en los operandos, deben ser de tipo logico")
示例4: exitPowerEval
# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import tipoValor [as 别名]
def exitPowerEval(self, ctx):
if len(ctx.atom_stmt()) == 2:
valorD = self.pilaValores.pop()
valorI = self.pilaValores.pop()
if self.numerico(valorD) and self.numerico(valorI):
nodo = Nodo()
nodo.tipoValor = "FLOAT"
nodo.valor = valorI.valor ** valorD.valor
self.pilaValores.append(nodo)
print("Nueva potencia: " + str(nodo.valor))
else:
raise RuntimeError("Error en los operadores, deben ser de tipo entero")
示例5: exitShiftRight
# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import tipoValor [as 别名]
def exitShiftRight(self, ctx):
if len(ctx.arith_expr()) == 2:
valorD = self.pilaValores.pop()
valorI = self.pilaValores.pop()
if valorD.tipoValor == "INTEGER" and valorI.tipoValor == "INTEGER":
nodo = Nodo()
nodo.tipoValor = "INTEGER"
nodo.valor = valorD.valor >> valorI.valor
self.pilaValores.append(nodo)
print("Nueva shift right: " + str(nodo.valor))
else:
raise RuntimeError("Error en los operandos, deben ser de tipo entero")
示例6: enterNumberFloat
# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import tipoValor [as 别名]
def enterNumberFloat(self, ctx):
valor = float(ctx.FLOAT_NUMBER().getText())
nodo = Nodo()
nodo.valor = valor
nodo.tipoValor = "FLOAT"
self.pilaValores.append(nodo)
示例7: enterNumberInteger
# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import tipoValor [as 别名]
def enterNumberInteger(self, ctx):
valor = int(ctx.integer().getText())
nodo = Nodo()
nodo.valor = valor
nodo.tipoValor = "INTEGER"
self.pilaValores.append(nodo)
示例8: enterAtomFalse
# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import tipoValor [as 别名]
def enterAtomFalse(self, ctx):
nodo = Nodo()
nodo.valor = False
nodo.tipoValor = "BOOL"
self.pilaValores.append(nodo)
示例9: enterAtomNone
# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import tipoValor [as 别名]
def enterAtomNone(self, ctx):
nodo = Nodo()
nodo.valor = None
nodo.tipoValor = "NONE"
self.pilaValores.append(nodo)
示例10: enterAtomString
# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import tipoValor [as 别名]
def enterAtomString(self, ctx):
nodo = Nodo()
nodo.valor = ctx.string()
nodo.tipoValor = "STRING"
self.pilaValores.append(nodo)
示例11: enterAtomName
# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import tipoValor [as 别名]
def enterAtomName(self, ctx):
nodo = Nodo()
valor = self.evaluarSimbolo(ctx.NAME())
nodo.tipoValor = valor[0]
nodo.valor = valor[1]
self.pilaValores.append(nodo)