Перейти к содержанию

172 уроков, 13 библиотек и челлендж «Что выведет код?» — бесплатно, код прямо в браузере

Начать обучение
91 команд Живой поиск Копирование в клик

Шпаргалки по Python-библиотекам: команды под рукой

Забыли имя метода — и перечитываете урок ради одной строки? Весь словарь самоучителя на одной странице: ключевые команды NumPy, Pandas, Matplotlib, BeautifulSoup, FastAPI и Flask с короткими пояснениями. Ищите, копируйте, проверяйте себя в тренажёре — бесплатно и без регистрации.

Редакция Питоники

Зачем шпаргалка, если есть уроки

Уроки учат думать: почему маска arr > 5 отбирает элементы, а не булевы значения, почему groupby без агрегации бесполезен и что именно вернёт find_all. Это медленный слой — и он нужен только при первом знакомстве.

Шпаргалка — быстрый слой. Через неделю после урока вы помните идею, но забыли порядок аргументов или имя метода. Вместо того чтобы перечитывать главу, вы находите команду за секунды: поиском по коду или по человеческому описанию («как сгруппировать», «как сохранить график»). Опытные разработчики держат такие списки открытыми годами — не потому что не знают Python, а потому что помнить все сигнатуры ни к чему.

Рабочий цикл: урок → задача → шпаргалка. Каждый раз, когда в задаче вы сверяетесь с этим справочником, возвращайтесь на секунду и к уроку этой команды — так быстрый слой медленно превращается в знание.

Интерактивный справочник: 6 библиотек

Печатайте запрос («массив», «фильтр», «график», «парсер», «роут») — поиск покажет подходящие команды из всех шпаргалок сразу. Кнопка справа копирует команду в буфер.

Найдено 91 из 91

NumPy

Быстрые массивы и математика над целыми столбцами чисел

Уроки

Создание массивов

  • np.array([1, 2, 3])

    создаёт массив ndarray из списка

  • np.zeros(4)

    массив из четырёх нулей

  • np.arange(0, 10, 2)

    массив [0 2 4 6 8] с шагом 2

  • np.linspace(0, 1, 5)

    пять равноудалённых точек от 0 до 1

Свойства массива

  • arr.shape

    размеры массива (строки, столбцы)

  • arr.ndim

    число измерений массива

  • arr.dtype

    тип элементов массива (int64, float64...)

Математика

  • arr * 2

    умножает каждый элемент на 2 без цикла

  • np.sqrt(arr)

    квадратный корень каждого элемента

  • np.mean(arr)

    среднее арифметическое элементов

  • np.median(arr)

    медиана массива

  • np.std(arr)

    стандартное отклонение

  • arr.sum()

    сумма всех элементов

Индексация и срезы

  • arr[1:4]

    срез — элементы с индекса 1 по 3

  • arr[arr > 5]

    булева маска: только элементы больше 5

  • m[0, 2]

    элемент первой строки и третьего столбца

  • m[:, 0]

    весь первый столбец двумерного массива

Полезное

  • arr.reshape(2, 3)

    меняет форму массива на 2 строки и 3 столбца

  • np.unique(arr)

    отсортированные уникальные значения

  • np.where(arr > 0, arr, 0)

    заменяет элементы по условию (неотрицательные)

Pandas

Таблицы DataFrame: читать, чистить, группировать, считать

Уроки

Чтение данных

  • pd.read_csv("data.csv")

    загружает CSV-файл в DataFrame

  • pd.read_sql("SELECT ...", con)

    читает SQL-запрос из базы в DataFrame

  • df.head()

    первые пять строк таблицы

  • df.info()

    типы столбцов и число непустых значений

  • df.describe()

    статистика по числовым столбцам (mean, std, min...)

Выборка

  • df["price"]

    один столбец как Series

  • df[["name", "price"]]

    несколько столбцов как новый DataFrame

  • df.loc[3]

    строка по текстовой метке индекса

  • df.iloc[0]

    строка по номеру позиции

  • df[df["age"] > 30]

    фильтр строк по условию

Очистка

  • df.dropna()

    удаляет строки с пропусками

  • df.fillna(0)

    заменяет пропуски нулями

  • df.drop_duplicates()

    удаляет повторяющиеся строки

  • df["age"].astype(int)

    приводит столбец к целому типу

Анализ

  • df.groupby("city")["sales"].sum()

    группирует по городу и суммирует продажи

  • df.sort_values("price", ascending=False)

    сортировка по убыванию цены

  • df["city"].value_counts()

    счётчик уникальных значений столбца

  • df.merge(df2, on="id")

    присоединяет вторую таблицу по ключу id

  • df.pivot_table(values="sales", index="month", aggfunc="mean")

    сводная таблица со средним по группам

Matplotlib / Seaborn

Графики для отчётов и дашбордов — от линии до тепловой карты

Уроки

Базовые графики

  • plt.plot(x, y)

    линейный график

  • plt.bar(cats, vals)

    столбчатая диаграмма

  • plt.hist(data, bins=10)

    гистограмма распределения с 10 корзинами

  • plt.scatter(x, y)

    точечная диаграмма (scatter)

  • plt.pie(vals, labels=cats)

    круговая диаграмма с подписями

Оформление

  • plt.title("Выручка по месяцам")

    заголовок графика

  • plt.xlabel("Месяц")

    подпись оси X (ylabel — для Y)

  • plt.legend()

    легенда линий и цветов

  • plt.grid(True)

    сетка на поле графика

  • plt.tight_layout()

    подгоняет отступы, чтобы подписи не обрезались

Вывод и сохранение

  • plt.show()

    отображает график

  • plt.savefig("chart.png", dpi=150)

    сохраняет график в PNG (до plt.show)

Seaborn

  • sns.set_theme(style="whitegrid")

    единая аккуратная тема для всех графиков

  • sns.boxplot(data=df, x="team", y="score")

    ящик с усами по группам

  • sns.heatmap(df.corr(), annot=True)

    тепловая карта корреляций с числами

  • sns.histplot(df["age"], kde=True)

    гистограмма с плавной кривой плотности

BeautifulSoup

Парсинг HTML: находить теги, атрибуты и текст на странице

Уроки

Создание парсера

  • BeautifulSoup(html, "html.parser")

    разбирает HTML-строку в дерево тегов

Поиск тегов

  • soup.find("h1")

    первый тег h1 на странице

  • soup.find_all("a")

    все ссылки списком

  • soup.find("a", class_="price")

    первая ссылка с классом price

  • soup.select_one("div.item")

    первый элемент по CSS-селектору

  • soup.select("table td")

    все элементы по CSS-селектору

Данные из тега

  • a.get("href")

    значение атрибута href (None, если нет)

  • a.get("class", "no-class")

    атрибут со значением по умолчанию

  • a.text

    текст внутри тега без разметки

  • a.get_text(strip=True)

    текст без внешних пробелов и переводов строк

Навигация и отладка

  • tag.parent

    родительский тег

  • tag.attrs

    словарь всех атрибутов тега

  • soup.prettify()

    красиво отформатированный HTML для отладки

FastAPI

API с автоматической валидацией и Swagger-документацией

Уроки

Каркас приложения

  • app = FastAPI()

    создаёт приложение FastAPI

  • uvicorn main:app --reload

    запускает сервер с автоперезагрузкой

Роуты

  • @app.get("/items")

    GET-эндпоинт для списка объектов

  • @app.post("/items", status_code=201)

    POST-эндпоинт с кодом ответа 201

  • @app.get("/items/{item_id}")

    роут с параметром пути

  • def f(q: str | None = None)

    необязательный query-параметр с типом

Pydantic-модели

  • class Item(BaseModel): ...

    модель запроса: типы = автовалидация

  • @app.post("/items") def create(item: Item): ...

    принимает JSON и сам превращает его в Item

Ошибки и ответы

  • raise HTTPException(status_code=404, detail="Нет")

    ошибку 404 с понятным сообщением

  • return {"ok": True}

    словарь автоматически сериализуется в JSON

Документация

  • http://127.0.0.1:8000/docs

    Swagger UI генерируется сам по типам

Flask

Минимум кода — сайт уже работает: роуты, шаблоны, формы

Уроки

Каркас приложения

  • app = Flask(__name__)

    создаёт приложение Flask

  • flask run

    запускает сервер разработки

Роуты

  • @app.route("/")

    главная страница сайта

  • @app.route("/user/<name>")

    динамический роут с переменной из URL

  • @app.route("/form", methods=["POST"])

    роут, принимающий отправку формы

Шаблоны и ответы

  • render_template("page.html", name=name)

    рендерит Jinja2-шаблон с переменными

  • jsonify({"ok": True})

    JSON-ответ для API-ручки

  • redirect(url_for("index"))

    перенаправляет на другой роут по имени функции

Запрос request

  • request.args.get("q")

    параметр из строки запроса (?q=...)

  • request.form.get("email")

    поле из отправленной формы

  • request.method

    HTTP-метод запроса (GET, POST)

Отладка

  • app.run(debug=True)

    локальный запуск с отладчиком

Тренажёр: вспомните команду сами

Пять случайных команд из всех шпаргалок. Сначала попробуйте вспомнить, что делает команда, — и только потом смотрите варианты. Это тот же навык, что проверяет челлендж «Что выведет код?», только про синтаксис, а не про вывод.

Тренажёр команд

Команда 1 из 5

Три шага: от шпаргалки к памяти

1. Пройдите урок

Команда заходит в голову только в контексте. В каждом уроке она запускается прямо на странице — с выводом и объяснением.

Выбрать раздел

2. Решите за 5 минут

Откройте песочницу и решите маленькую задачу по памяти, сверяясь со шпаргалкой только в тупике — не раньше.

Открыть песочницу

3. Проверьте на скорость

Челлендж собирает задачи из всех разделов: 10 вопросов на время покажут, какие библиотеки сидят непрочно.

Начать челлендж

Шпаргалка — это карта, а не маршрут

Справочник показывает, что существует, но не объясняет, почему работает. Полный путь каждой библиотеки — в её разделе: 10 уроков от нуля до первого проекта.

Выучили команды — проверьте себя: тест по Matplotlib, тест по BeautifulSoup, тест по FastAPI или тест по Flask — десятки задач с объяснением каждого ответа, бесплатно и без регистрации.

Частые вопросы

Начните с одной библиотеки, которую учите сейчас, и не пытайтесь запомнить всё сразу. Откройте раздел уроков, пройдите первые уроки и вернитесь к шпаргалке как к настольному списку: при решении задач сверяйтесь с ней, пока команды не начнут вспоминаться сами.

Да, у каждой команды есть кнопка копирования — команда попадёт в буфер обмена в готовом для вставки виде. Но для обучения полезнее набирать команды руками: моторная память помогает запоминать синтаксис быстрее зрительной.

Нет. Это выжимка из десяти уроков каждого раздела: команды, без которых не начинается работа с библиотекой — создание массива, чтение CSV, базовые графики, поиск тегов, роуты. Полный путь с объяснениями и практикой — в уроках соответствующего раздела.

Документация объясняет, как всё устроено; шпаргалка нужна, когда идею помните, а имя метода или порядок аргументов — нет. Печатаете человеческое описание задачи («как сгруппировать», «как сохранить график») — поиск показывает команду без чтения страниц документации. Это выжимка из десяти уроков каждого раздела, а не полный справочник API.

Начните вводить название функции или словами описание задачи: «groupby», «график», «читать csv», «роут». Поиск ищет и по коду команды, и по её описанию, и по названию библиотеки. Чипы над списком сужают выдачу до одной библиотеки.

Узнавание и воспоминание — разные навыки. Прочитать команду легко; вспомнить её без подсказки — то, что реально помогает в работе. Тренажёр как раз тренирует воспоминание: показывает команду и просит выбрать её смысл из трёх вариантов.

PDF-версии нет — и это осознанно: справочник интерактивный, поиск по нему быстрее, чем листание PDF, а команда копируется в буфер одним кликом. Если нужен бумажный вариант, распечатайте страницу через браузер — при печати останутся все команды и примеры.

Да, список команд собран из текущих уроков Питоники и сопровождает их: каждая команда встречается минимум в одном уроке, а карточка библиотеки ведёт в её раздел. Если уроки пополняются новыми темами, в шпаргалки добавляются и их ключевые команды.

Шпаргалки под рукой — теперь по-настоящему выучите

Вернитесь к roadmap, выберите библиотеку под вашу цель и пройдите первый урок: код запускается прямо в браузере, без установки Python и регистрации.