# Создано: 2026-04-10 # Простой калькулятор — возвращает HTML страницу с кнопками. # Роутинг: GET → HTML страница; POST с {a, op, b} → вычисление и редирект с результатом. # _method приходит от python3.11 рантайма в event. _HTML = """ Калькулятор (Python)

Калькулятор

Python 3.11
0
{result_line}
""" def handler(event): # POST: тело приходит как JSON от рантайма if event.get('_method') == 'POST': return _compute(event) # GET: показываем чистую страницу return _html() def _html(result_line='', fresh_js='true'): return _HTML.replace('{result_line}', result_line).replace('{fresh_js}', fresh_js) def _compute(event): try: a = float(event.get('a', 0)) b = float(event.get('b', 0)) op = event.get('op', '') if op == '+': res = a + b elif op == '-': res = a - b elif op == '*': res = a * b elif op == '/': if b == 0: return _html('Деление на ноль', 'false') res = a / b else: return _html('Неизвестный оператор', 'false') # Убираем лишний .0 для целых результатов res_str = str(int(res)) if res == int(res) else str(res) return _html(f'{int(a) if a == int(a) else a} {op} {int(b) if b == int(b) else b} = {res_str}', 'false') except (ValueError, TypeError) as exc: return _html(f'Ошибка: {exc}', 'false')