from function_parser.FunctionParser import * ex = 'sin(0.2.*x)' parser = FunctionParser(ex) f = parser.getFunction() print(f(2))
None) while object_builder.stop_build(ar_node) is False: top_trio = object_builder.search_top(ar_node) print(top_trio) lec = top_trio.lec top_index = self.infl_point(lec) if isinstance(lec[top_index], object_types.Function) or isinstance( top_element, object_types.UnaryMinus): left_lec = None right_lec = lec[1:] else: left_lec = lec[0:top_index] right_lec = lec[top_index + 1:] duo = self.build_ar_node(None, left_lec, right_lec, None, top_trio) ar_node = ar_node + duo for node in ar_node: if node: if node.parent is None: result = node.calc() print(f'result{result}') return result if __name__ == '__main__': obj = FunctionParser(['math']) builder = TreeBuilder() string1 = '5*(3+3*(5*5))' arr_node = builder.build_tree(string1) print(f'result {arr_node}')