diff --git a/calculator/calculator.py b/calculator/calculator.py index fefdb7e33bab79a3a78c60dcbe91e14e539c1d06..28de3839219276aff0149bd51abc3b6ab9dd6883 100644 --- a/calculator/calculator.py +++ b/calculator/calculator.py @@ -2,7 +2,7 @@ This Calculator holds the logic for the calculator. """ from calculator.operators import Operator, STANDARD_OPERATORS -from calculator.expression import Token, Term, Expression, TermExpression, OperatorExpression +from calculator.expression import Term, Expression, TermExpression, OperatorExpression class Calculator: @@ -17,8 +17,10 @@ class Calculator: if operators is None: operators = STANDARD_OPERATORS self.operators = operators - def tokenize(self, line: str): + """ + ok + """ tokens = [] for token in line.split(): if token in self.operators: diff --git a/calculator/expression.py b/calculator/expression.py index 1a27f0c5c27494a971e1479b48bd5c6da9f3ae59..460b13f1a5dfec8e6c203e7cbe6e343f2ba5b3e3 100644 --- a/calculator/expression.py +++ b/calculator/expression.py @@ -1,9 +1,10 @@ """ Expression module defines the structure of an expression. """ -from calculator.operators import Operator from typing import Union +from calculator.operators import Operator + Term: type = int Token: type = Union[Operator, Term] diff --git a/calculator/operators.py b/calculator/operators.py index f855332c2cbd379592f4dba51d8c8c66e8c1593d..46a70ac89a4958749f5d5fea41c639805184855e 100644 --- a/calculator/operators.py +++ b/calculator/operators.py @@ -6,9 +6,9 @@ class Operator: Operator class is a binary operator with a symbol, a precedence and an evaluation function. """ def __init__(self, symbol, precedence, evaluate_function): - self.symbol = symbol - self.precedence = precedence - self.evaluate_function = evaluate_function + self.symbol = symbol + self.precedence = precedence + self.evaluate_function = evaluate_function def __repr__(self): return self.symbol @@ -17,4 +17,6 @@ class Operator: return self.evaluate_function(left, right) -STANDARD_OPERATORS = { '+': Operator('+', 1, lambda a, b: a + b),'-': Operator('-', 1, lambda a, b: a - b),'*': Operator('×', 2, lambda a, b: a * b),'/': Operator('/', 2, lambda a, b: a / b)} +STANDARD_OPERATORS = { '+': Operator('+', 1, lambda a, b: a + b), +'-': Operator('-', 1, lambda a, b: a - b),'*': Operator('×', 2, lambda a, b: a * b), +'/': Operator('/', 2, lambda a, b: a / b)} diff --git a/calculator/server.py b/calculator/server.py index e0dc49ae37812a16bb365a45c95771af16f114b5..99154c6b18ff5614eeb69f2107eb54e263aa0756 100644 --- a/calculator/server.py +++ b/calculator/server.py @@ -1,7 +1,10 @@ -from calculator.calculator import Calculator +""" +caca +""" from fastapi import FastAPI from fastapi.requests import Request from fastapi.templating import Jinja2Templates +from calculator.calculator import Calculator app = FastAPI() templates = Jinja2Templates(directory="calculator/templates")