python, pt.04에서 처음부터 간단한 인터프리터를 구축할 수 있습니다. 비교 함수

이 게시물에서 우리는 우리의 인터프리터에 비교 함수를 추가하고 있습니다:

class Interpreter:

    # .... previous code ....

    def Lt(self,xs):
        return self.eval(xs[1]) < self.eval(xs[2])
    def Gt(self,xs):
        return self.eval(xs[1]) > self.eval(xs[2])
    def Lte(self,xs):
        return not self.Gt(xs)
    def Gte(self,xs):
        return not self.Lt(xs)
    def Eq(self,xs):
        return self.eval(xs[1]) == self.eval(xs[2])
    def NotEq(self,xs):
        return not self.Eq(xs)

code=[

    ["If",["Lte",3,5],
       ["Print","3 <= 5"],
       ["Print","3 > 5"]   
    ],

    ["If",["NotEq",3,5],
       ["Print","3 != 5"],
       ["Print","3 == 5"]   
    ]   
]

interpreter=Interpreter()

interpreter.run(code)


산출:

3 <= 5
3 != 5


링크: Patreon

좋은 웹페이지 즐겨찾기