当前位置: 首页>>代码示例>>Python>>正文


Python Nodo.valor方法代码示例

本文整理汇总了Python中Nodo.Nodo.valor方法的典型用法代码示例。如果您正苦于以下问题:Python Nodo.valor方法的具体用法?Python Nodo.valor怎么用?Python Nodo.valor使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Nodo.Nodo的用法示例。


在下文中一共展示了Nodo.valor方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: visitIterable_generate

# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import valor [as 别名]
 def visitIterable_generate(self, ctx):
     valor = super(GramaticaExtVisitor,self).visit(ctx.test())
     if valor.tipo == "INTEGER":
         nodo = Nodo()
         nodo.tipo = "ITERATOR"
         nodo.subtipo = "LIST"
         nodo.valor = []
         for x in xrange(valor.valor):
             tmp = Nodo()
             tmp.tipo = "INTEGER"
             tmp.valor = x
             nodo.valor.append(tmp)
         return nodo
     elif valor.tipo == "STRING":
         nodo = Nodo()
         nodo.tipo = "ITERATOR"
         nodo.subtipo = "LIST"
         nodo.valor = []
         for x in valor.valor:
             tmp = Nodo()
             tmp.valor = x
             tmp.tipo = "STRING"
             nodo.valor.append(tmp)
         return nodo
     else:
         ln = -1
         self.raiseError(ln, 'Error en el generador, este debe ser de tipo cadena o entero', "non-iterable")
开发者ID:unzero,项目名称:Final,代码行数:29,代码来源:GramaticaExtVisitor.py

示例2: visitAtomString

# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import valor [as 别名]
 def visitAtomString(self, ctx):
     nodo = Nodo()
     nodo.valor = str(ctx.STRING())
     nodo.valor = nodo.valor[1:len(nodo.valor)-1]
     nodo.tipo = "STRING"
     #self.pilaValores.append(nodo)
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:9,代码来源:GramaticaExtVisitor.py

示例3: visitNumberInteger

# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import valor [as 别名]
 def visitNumberInteger(self, ctx):
     valor = int(ctx.integer().getText())
     nodo = Nodo()
     nodo.valor = valor
     nodo.tipo = "INTEGER"
     #self.pilaValores.append(nodo)
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:9,代码来源:GramaticaExtVisitor.py

示例4: visitNumberFloat

# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import valor [as 别名]
 def visitNumberFloat(self, ctx):
     valor = float(ctx.FLOAT_NUMBER().getText())
     nodo = Nodo()
     nodo.valor = valor
     nodo.tipo = "FLOAT"
     #self.pilaValores.append(nodo)
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:9,代码来源:GramaticaExtVisitor.py

示例5: visitTest_iterable_in

# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import valor [as 别名]
 def visitTest_iterable_in(self,ctx):
     vl = super(GramaticaExtVisitor,self).visit(ctx.test())
     iterab = super(GramaticaExtVisitor,self).visit(ctx.iterable())
     if iterab == None or vl == None:
         ln = -1
         self.raiseError(ln, "No se han proporcionado elementos para operar", "operators-expected")
     if iterab.tipo != "ITERATOR":
         ln = -1
         self.raiseError(ln, "No es posible realizar esta operacion sobre un elemento no iterable", "iterable-expected")
     nodo = Nodo()
     nodo.tipo = "BOOL"
     nodo.valor = False
     for t in iterab:
         if t.tipo == vl.tipo and t.valor == vl.valor:
             nodo.valor = True
             return nodo
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:19,代码来源:GramaticaExtVisitor.py

示例6: visitAtomName

# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import valor [as 别名]
 def visitAtomName(self, ctx):
     nodo = Nodo()
     valor = self.evaluarSimbolo(ctx.NAME())
     nodo.tipo = valor.tipo
     nodo.valor = valor.valor
     nodo.subtipo = valor.subtipo
     #self.pilaValores.append(nodo)
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:10,代码来源:GramaticaExtVisitor.py

示例7: visitIterable_tuple

# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import valor [as 别名]
 def visitIterable_tuple(self, ctx):
     valorI = super(GramaticaExtVisitor,self).visit(ctx.test(0))
     valorD = super(GramaticaExtVisitor,self).visit(ctx.test(1))
     nodo = Nodo()
     nodo.tipo = "ITERATOR"
     nodo.subtipo = "TUPLE"
     nodo.valor = (valorI,valorD)
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:10,代码来源:GramaticaExtVisitor.py

示例8: visitTestExprComp

# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import valor [as 别名]
 def visitTestExprComp(self, ctx):
     valorI = super(GramaticaExtVisitor,self).visit(ctx.expr(0))
     valorD = super(GramaticaExtVisitor,self).visit(ctx.expr(1))
     nodo = Nodo()
     nodo.tipo = "BOOL"
     op = ctx.comp_op().getText()
     if valorI.tipo == "ITERATOR" or valorD.tipo == "ITERATOR":
         ln = -1
         self.raiseError(ln, "No es posible realizar este tipo de operacion con elementos iterables", "primitive-expected")
     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 == "!=":
         print(valorI)
         print(valorD)
         nodo.valor = valorI.valor != valorD.valor
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:28,代码来源:GramaticaExtVisitor.py

示例9: exitComparisonEval

# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import valor [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))
开发者ID:unzero,项目名称:Final,代码行数:27,代码来源:GramaticaExtListener.py

示例10: visitTestNot

# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import valor [as 别名]
 def visitTestNot(self, ctx):
     valor = super(GramaticaExtVisitor,self).visit(ctx.test(0))
     nodo = Nodo()
     if valor.tipo == "BOOL":
         nodo.tipo = "BOOL"
         nodo.valor = not valor.valor
     else:
         ln = -1
         self.raiseError(ln, 'Error en los operandos', "Operacion not-test")
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:12,代码来源:GramaticaExtVisitor.py

示例11: visitTestOr

# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import valor [as 别名]
 def visitTestOr(self, ctx):
     valorI = super(GramaticaExtVisitor,self).visit(ctx.test(0))
     valorD = super(GramaticaExtVisitor,self).visit(ctx.test(1))
     nodo = Nodo()
     if valorI.tipo == "BOOL" and valorD.tipo == "BOOL":
         nodo.tipo = "BOOL"
         nodo.valor = valorI.valor or valorD.valor
     else:
         ln = -1
         self.raiseError(ln, 'Error en los operandos', "Operacion or-test")
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:13,代码来源:GramaticaExtVisitor.py

示例12: visitExprXor

# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import valor [as 别名]
 def visitExprXor(self, ctx):
     valorI = super(GramaticaExtVisitor,self).visit(ctx.expr(0))
     valorD = super(GramaticaExtVisitor,self).visit(ctx.expr(1))
     nodo = Nodo()
     if valorI.tipo == "INTEGER" or valorD.tipo == "INTEGER":
         nodo.tipo = "INTEGER"     
         nodo.valor = valorI.valor ^ valorD.valor
     else:
         ln = -1
         self.raiseError(ln, 'Error en los operandos', "Operacion bit-xor")
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:13,代码来源:GramaticaExtVisitor.py

示例13: exitShiftRight

# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import valor [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")
开发者ID:unzero,项目名称:Final,代码行数:14,代码来源:GramaticaExtListener.py

示例14: exitPowerEval

# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import valor [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")
开发者ID:unzero,项目名称:Final,代码行数:14,代码来源:GramaticaExtListener.py

示例15: visitExprModule

# 需要导入模块: from Nodo import Nodo [as 别名]
# 或者: from Nodo.Nodo import valor [as 别名]
 def visitExprModule(self, ctx):
     valorI = super(GramaticaExtVisitor,self).visit(ctx.expr(0))
     valorD = super(GramaticaExtVisitor,self).visit(ctx.expr(1))
     nodo = Nodo()
     if valorI.tipo == "INTEGER" or valorD.tipo == "INTEGER":
         nodo.tipo = "INTEGER"     
         nodo.valor = valorI.valor % valorD.valor
         print(str(valorI)+" : "+str(valorD));
     else:
         ln = -1
         self.raiseError(ln, 'Error en los operandos', "Operacion modulo")
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:14,代码来源:GramaticaExtVisitor.py


注:本文中的Nodo.Nodo.valor方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。