header
login

Выполнение кода (code)

Функция code позволяет выполнять пользовательский Python-код в изолированной песочнице. Используйте ее для обработки данных, вычислений и трансформаций, которые невозможно реализовать стандартными функциями.

Параметры

Параметр Описание
code Код для выполнения (Python)
save_as Имя переменной для сохранения результата

Написание кода

Код пишется в встроенном редакторе с подсветкой синтаксиса Python. Для возврата результата используйте return:

return input

Если в коде нет return, можно записать результат в переменную result:

result = 42

Доступные данные

Внутри кода доступны все переменные, созданные ранее в сценарии (через add_var, http_request и др.).

Доступные функции

Песочница предоставляет ограниченный набор встроенных функций. Импорт модулей запрещен.

Базовые

int, float, str, bool, len, range, print

Математика

abs, round, min, max, pow, sqrt, sin, cos, tan, log, exp

Случайные числа

random(), randint(a, b), uniform(a, b), choice(seq)

Время

time() — текущее время в секундах (Unix timestamp)

Примеры

Обработка текста

text = message.upper()
return text

Вычисления

price = 100
discount = 0.15
return round(price * (1 - discount), 2)

Случайный выбор

responses = ["Да", "Нет", "Возможно", "Спросите позже"]
return choice(responses)

Работа с данными

items = [1, 2, 3, 4, 5]
return sum_val if (sum_val := 0) else max(items)

Ограничения

  • Нет импортовimport, open, exec, eval и другие небезопасные операции запрещены
  • Таймаут — выполнение ограничено 30 секундами
  • Размер кода — до 500 000 символов
  • Размер результата — до 2 000 000 символов
  • Нет доступа к файловой системе, сети и системным ресурсам

Сохранение результата

Результат выполнения (значение return или переменная result) сохраняется в переменную, указанную в save_as. Затем его можно использовать в последующих функциях:

Результат вычисления: {=result=}

Редактор кода

Двойной клик по блоку открывает полноценный редактор с:

  • Подсветкой синтаксиса Python
  • Нумерацией строк
  • Автоматическим переносом строк