Тема
Python
Python работает прямо в таблице — как её часть, а не отдельный инструмент. Ссылайтесь на ячейки, возвращайте результат на лист, тяните данные из внешних API и ставьте любые пакеты.
Быстрый старт
Выберите ячейку, нажмите
/и выберите Python в меню типов ячейки.Напишите код в редакторе. Последняя строка возвращается в таблицу в позиции этой ячейки.

Ссылки на ячейки
Обращайтесь к данным листа через t.cells — адресация та же, что и в формулах (стиль A1). Когда исходные ячейки меняются, Python-ячейка пересчитывается автоматически.
python
# одна ячейка → её значение
x = t.cells("A1")
t.cells("A1") + t.cells("A2")
# диапазон → DataFrame; first_row_header делает первую строку заголовками
t.cells("A1:C7")
t.cells("A1:B9", first_row_header=True)
# весь столбец или строку — открытым диапазоном (пропуски → None)
t.cells("A") # столбец A целиком
t.cells("A:C") # столбцы A–C
t.cells("1") # строка 1Данные удобно держать таблицами: на таблицу — и на любой результат Python-кода — можно сослаться по имени, без диапазона.
python
t.cells("Продажи") # значения без заголовков
t.cells("Продажи[Город]") # один столбец
t.cells("Продажи[#ALL]") # вместе с заголовкамиЛист указывают перед адресом в кавычках: t.cells("'Лист2'!A1:C9") (имя таблицы действует во всём файле, лист для неё не нужен). Абсолютные ссылки фиксируют строку или столбец знаком $ — t.cells("A$1") при копировании ячейки не сдвигается.
Возврат данных на лист
Результат Python-кода возвращается прямо на лист — по умолчанию это последняя строка. Вернуть можно только одну переменную; чтобы отдать несколько значений, объедините их (например, в список). Любой результат именуется и оформляется как таблица — на него тоже можно сослаться по имени.
python
x = 5
# вернёт 5
x
Внешние данные
Совет
Если для доступа к API нужен ключ или токен, не вставляйте его прямо в код — храните в секретах пространства и подставляйте через {{SECRET_NAME}}.
Подключите библиотеку requests и обратитесь к нужному эндпоинту — результат сразу выводится на лист.
python
import requests
import pandas as pd
response = requests.get('your_API_url_here')
# JSON в DataFrame
df = pd.DataFrame(response.json())
dfИз CSV. Перетащите CSV-файл в таблицу, затем сошлитесь в Python на нужный диапазон — данные попадут в DataFrame. Аргумент first_row_header=True делает первую строку заголовком.
python
df = t.cells('A1:B161', first_row_header=True)Пакеты
Многие библиотеки доступны сразу — pandas, NumPy, SciPy и другие. Импорт — как обычно:
python
import pandas as pd
import numpy as np
import scipyОстальные пакеты ставит micropip вместе с зависимостями — как на чистом Python, так и с C-расширениями, собранными под Pyodide (недостающие чистые пакеты берутся из PyPI):
python
import micropip
# await ждёт загрузки пакета
await micropip.install("faker")
from faker import Faker
Faker().name()