Перейти к содержимому

Python

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

Быстрый старт

  1. Выберите ячейку, нажмите / и выберите Python в меню типов ячейки.

  2. Напишите код в редакторе. Последняя строка возвращается в таблицу в позиции этой ячейки.

    Редактор 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

Pandas DataFrame как таблица в листе

Внешние данные

Совет

Если для доступа к 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()
Была ли эта страница полезной?