Единственная Python-IDE, которая вам нужна.
Релизы
PyCharm 2026.3 уже здесь! Помимо таких крупных функций, как JetBrains Air, workspaces, Python 3.15 lazy imports, and the redesigned interpreter widget, этот выпуск включает 303 fixes and improvements в повседневную разработку на Python.
От более умного автодополнения кода до более надежных сред и отладки — вот некоторые из изменений, о которых стоит знать, включая исправление проблем, о которых сообщалось более десяти лет назад.
Более интеллектуальный анализ кода и выведение типов
Лучшая поддержка functools.partial
functools.partial позволяет создавать новый вызываемый объект, заранее передавая часть аргументов функции. Раньше PyCharm мог испытывать трудности с выведением результирующей сигнатуры, что приводило к отсутствию информации о параметрах и неверным предупреждениям.
Теперь PyCharm распознает оставшиеся параметры, проверяет их типы и определяет частичные объекты как валидные экземпляры Callable. В примере ниже PyCharm правильно определяет оставшийся параметр и помечает несовместимый аргумент.
PyCharm распознает оставшиеся параметры объекта functools.partial.
Это устраняет несколько давних проблем с автодополнением, информацией о параметрах и проверкой типов (PY-35363, PY-33618, PY-25698, PY-36385).
Меньше ложных срабатываний для дженериков и коллекций
Теперь PyCharm обеспечивает более точное выведение типов для обобщенных классов, ограниченных и зафиксированных переменных типов, перегруженных конструкторов и обобщенных методов __getattr__. Например, вызов метода для ограниченной переменной типа теперь сохраняет ее тип возвращаемого значения вместо отката к Any (PY-89863).
Выведение типов для коллекций также улучшилось. Вложенные списки, опциональные значения, литералы словарей и распаковка кортежей вызывают меньше ложных предупреждений (PY-89564, PY-91999). Также появились улучшения для Literal, Enum и TypedDict, а также поддержка TypeForm[T] из PEP 747 и типов пересечения через ty_extensions.Intersection (PY-90287, PY-62524, PY-89043, PY-87024).
Более понятные предупреждения типов и комментарии для их подавления
Когда PyCharm обнаруживает несоответствие типов, его подсказки теперь предлагают более четкие объяснения, улучшенное форматирование и ссылки на соответствующие типы. Анализ вызовов и потока управления также обрабатывает больше случаев с опциональными вызываемыми объектами, привязанными методами и путями, которые никогда не возвращают управление, что снижает количество ложных предупреждений (PY-90555, PY-83644).
Если предупреждение является намеренным, у вас появляется больше контроля над его подавлением. PyCharm теперь поддерживает более короткие коды в комментариях # type: ignore[...] и представляет # pycharm: ignore[...] для отдельных инспекций PyCharm. Также появилось действие подавления с помощью комментария «type: ignore», а неизвестные коды подавления отмечаются для выявления опечаток (PY-90787, PY-92114).
PyCharm 2026.3 представляет новое действие для подавления отдельных предупреждений типов с помощью комментариев # type: ignore[...].
Тестирование и инструменты разработчика
Улучшенное автодополнение для pytest и моков
Моки и фикстуры могут быть сложными для понимания IDE. Теперь PyCharm предоставляет автодополнение для фикстуры mocker из pytest-mock, навигацию по целям mocker.patch() и автодополнение на основе классов, переданных в Mock(spec=...) или Mock(spec_set=...).
PyCharm 2026.3 предоставляет автодополнение для методов, определенных в классах, переданных в Mock(spec=...).
PyCharm также отмечает недействительные цели unittest.mock.patch() и улучшает автодополнение и документацию для фикстур pytest (PY-36260, PY-32282).
Для проектов с пользовательской инфраструктурой тестирования вы можете настроить скрипт запуска unittest, например Django’s tests/runtests.py. Если он использует unittest.TextTestRunner, результаты тестов отображаются в дереве тестов PyCharm (PY-26068).
Более мощные интеграции с программами проверки типов и Ruff
Zuban, совместимый с mypy проверяльщик типов и языковой сервер, присоединяется к ty, Pyrefly и basedpyright в качестве поддерживаемого внешнего инструмента. Его интеграция обеспечивает диагностику, автодополнение, информацию при наведении, встроенные подсказки и быстрое исправление. Pyrefly также получает исправления для пользовательских корней импорта и установки недостающих пакетов (PY-85009, PY-89805).
Благодаря Ruff оптимизация импорта теперь удаляет неиспользуемый импорт и упорядочивает его. Исправления Ruff могут запускаться автоматически при сохранении или перед коммитом, а новое действие Apply Ruff Fixes работает в выбранной области, включая весь проект. Обнаружение конфигурации также стало более надежным в многокорневых, сетевых проектах и проектах WSL (PY-85534, PY-86352).
Применяйте исправления Ruff к отдельному файлу, пользовательской области или всему проекту прямо из PyCharm.
Django, FastAPI и SQLAlchemy
Django: вы можете создавать конфигурации запуска для задач Django 6.0, а члены TextChoices, определенные с кортежами значений и меток, больше не вызывают ложных ошибок типов (PY-86368, PY-92177).
В Django REST framework rest_framework.reverse.reverse() теперь предлагает автодополнение имен URL и навигацию, прямо как встроенный в Django reverse() (PY-78900).
PyCharm 2026.3 предоставляет автодополнение имен URL для функции reverse() в Django REST framework.
FastAPI: помимо новых интерактивных графов зависимостей, параметры пути, передаваемые через зависимости, больше не вызывают неверных предупреждений об отсутствующих параметрах конечной точки (PY-88935).
SQLAlchemy: расширенная поддержка ORM улучшает автодополнение, навигацию и выведение типов для декларативных моделей. Исправления также охватывают атрибуты, добавленные через relationship(), и столбцы, использующие тип ENUM в SQLAlchemy (PY-79736, PY-29212).
Редактирование и рефакторинг
Несколько небольших исправлений делают редактирование более предсказуемым. Нажатие клавиши Enter после комментария, вводящего блок, теперь вставляет правильный отступ, а перемещение строк в файлах с отступами табуляцией больше не вызывает ложных предупреждений Unexpected indent (PY-15693, PY-78251).
Новая опция форматтера Align consecutive assignments выравнивает операторы присваивания. Вы можете включить ее в разделе Настройки | Редактор | Стиль кода | Python | Перенос и скобки (Settings | Editor | Code Style | Python | Wrapping and Braces). Форматтер также лучше справляется с сохранением настроенных пустых строк (PY-34006).
Рефакторинг также стал безопаснее. Встроенная функция Inline Function сохраняет поведение резервного копирования для пропущенных необязательных аргументов, а Implement abstract methods генерирует допустимые реализации асинхронных абстрактных методов (PY-81983, PY-53074).
Более надежные среды и быстрый запуск
conda: переменные среды, настроенные с помощью conda env config vars set или скриптов activate.d, теперь доступны при запуске скриптов, тестов и консоли Python из PyCharm. Раньше переменные могли работать в терминале, но отсутствовать внутри IDE — это особенно раздражало в проектах, использующих GDAL, QGIS, PyMC или цепочки инструментов компилятора (PY-55405, PY-38751).
uv: рабочие пространства, использующие общий корневой каталог .venv, сохраняют свой интерпретатор после обновления с PyCharm 2026.1. Проекты, использующие uv pip без pyproject.toml, теперь используют правильную команду установки, создание среды uv больше не требует uv init, а новые среды могут при желании получить доступ к системным сайтам пакетов (system site-packages) (PY-91108, PY-85589).
Производительность: скрипты Python запускаются быстрее благодаря снижению накладных расходов на вспомогательные компоненты. В частности, простое наличие установленного matplotlib больше не добавляет примерно 100 миллисекунд к зауску в остальном пустого скрипта (PY-92211).
Улучшения отладки
Режим отладчика debugpy теперь поддерживает установку значений (Set Value) и переход к курсору (Jump to Cursor). Среди других улучшений — сортировка переменных по типу, отображение графиков в окне инструментов Plots, поддержка интерактивного ввода с эмуляцией терминала, а также использование функции перехода в отладчик (Drop into debugger) для упавших тестов.
В примере ниже мы приостановили выполнение и изменили значение discount с 0.10 на 0.25, что позволяет проверить другой результат без перезапуска программы.
Изменение значения переменной во время отладки в режиме debugpy.
Отладка также работает надежнее для тестов в WSL, приложений, запущенных с помощью fastapi dev, и долго выполняющихся сеансов IDE на macOS (PY-90157, PY-90281, PY-90588).
Кроме того, в отладчике ключи словарей отображаются в порядке их добавления, объекты frozendict из Python 3.15 теперь можно разворачивать, а консоль отладки поддерживает настраиваемый стартовый скрипт (PY-75697, PY-21419).
Более удобная работа с блокнотами Jupyter
Функция поиска теперь ищет как в исходном коде, так и в выводах ячеек, поэтому вы можете найти результат без прокрутки всего блокнота. Вы также можете перемещать несколько выбранных ячеек вместе или использовать функцию Extract to Python File, чтобы скопировать их в обычный файл Python. Также был исправлен баг, из-за которого скрипты, внедренные в HTML-вывод, выполнялись дважды (PY-84634, PY-89385).
Спасибо за ваши отзывы
Не каждое значимое улучшение является главной функцией. Иногда это исчезнувшее ложное предупреждение, автодополнение там, где оно раньше не работало, или отладчик, ведущий себя так, как ожидалось. Некоторые исправления в этом релизе восходят к проблемам, о которых сообщалось более десяти лет назад.
Download PyCharm 2026.3 и опробуйте эти улучшения в своих проектах. А если PyCharm ведет себя не так, как нужно, сообщите об этом в YouTrack. Ваши сообщения и голоса помогают нам решать, что улучшить в первую очередь.
Спасибо за использование PyCharm, и приятной работы!












