PyCharm предоставляет большой набор инструментов из коробки: встроенный отладчик и инструмент запуска тестов, профилировщик Python, полнофункциональный встроенный терминал, инструменты для работы с базами данных. IDE интегрирована с популярными системами контроля версий, содержит встроенный SSH-терминал, поддерживает возможности удаленной разработки и удаленные интерпретаторы, а также интеграцию с Docker и Vagrant.
PyCharm предоставляет широкие возможности отладки кода на Python/Django и JavaScript:
Читайте подробнее о возможностях отладчика на этой странице.
В режиме встроенной отладки значения переменных, параметров функций и других объектов доступны прямо в окне редактора. Значения переменных можно посмотреть прямо в исходном коде рядом с их использованием.
Функция Step into My Code позволяет в режиме отладки осуществлять трассировку только по коду проекта, не углубляясь в библиотечные исходники.
PyCharm умеет отлаживать приложения, которые порождают несколько процессов Python, например, приложения Django, которые не запускаются в режиме no-reload, или приложения, использующие другие веб-фреймворки, в которых реализован аналогичный подход к автоматической перезагрузке кода.
При каждом выполнении скрипта/теста или отладчика создается специальная конфигурация запуска/отладки, которую можно изменить и использовать повторно. Как и настройки проекта, конфигурации Run/Debug можно использовать совместно всей командой.
Вы можете запустить любой файл на Python: просто кликните по нему правой кнопкой и выберите Run <your script>.
PyCharm позволяет легко настроить необходимое окружение для вашего проекта: локальное, удаленный интерпретатор или virtualenv.
Вы можете запустить интерактивную консоль для Python или Django, в которой есть много преимуществ над стандартными консолями. Среди них: проверка синтаксиса на лету с помощью инспекций, сопоставление скобок и кавычек и, конечно, автодополнения. Обе консоли работают с локальными и удаленными интерпретаторами.
С PyCharm нет необходимости покидать IDE во время разработки. Полнофункциональный встроенный терминал работает на платформах Windows, Linux и macOS.
PyCharm поддерживает все основные реализации языка Python: Python 2.x и 3.x, Jython, IronPython, PyPy и Cython, обеспечивая:
PyCharm позволяет легко выполнять модульное тестирование благодаря интеграции с популярными тестовыми фреймворками: doctests, nose и attest.
В PyCharm можно запустить тестовый файл, тест для отдельного класса или метода или все тесты из папки одновременно. Результаты тестов удобно просматривать в графическом интерфейсе инструмента запуска тестов, который отображает статистику их выполнения и позволяет быстро навигироваться по тестируемому коду.
PyCharm интергирован с инструментом анализа покрытия кода Coverage.py. Он отслеживает, какие части программы были выполнены, и анализирует исходный код, чтобы определить, какие фрагменты кода могли быть выполнены, но этого не произошло. Результаты отображаются в наглядном формате для последующего анализа и быстрой навигации по коду.
PyCharm поддерживает два популярных профилировщика: yappi и cProfile. Делайте снэпшоты и собирайте статистику работы вашего приложения прямо в PyCharm — результаты отображаются в виде цветного графа вызовов функций. Вы можете посмотреть сводный отчет, также предусмотрена навигация из графа в код.
PyCharm поддерживает два наиболее популярных инструмента для разработки с использованием BDD — Behave и Lettuce. Вы можете писать человекопонимаемый код тестов, описывающий поведение вашего приложения. Поддержка включает: помощь в инсталляции и конфигурации, Run Configuration и Intellisense.
Визуализация параллельных потоков помогает контролировать многопоточные приложения. Вы можете запустить ваше приложение в режиме Concurrency Diagram и проверять состояния потоков внутри запущенного процесса на диаграмме в реальном времени.
Поддержка Git, SVN, Mercurial, Perforce и других систем контроля версий помогает управлять локальными изменениями и производить сложные операции с ветками. Все однообразные задачи (добавление и удаление файлов) выполняются автоматически.
Следующие функции доступны независимо от того, какую систему контроля версий вы используете:
PyCharm отслеживает любые изменения в исходных файлах, защищает от случайной потери данных и не дает другим приложениям вносить изменения в проект. Вы всегда можете просмотреть историю изменений файла или каталога и откатиться к любой из предыдущих версий.
Встроенный инструмент visual merge легко и быстро разрешает конфликты слияния. Локальные изменения подсвечиваются при вводе в редакторе, обеспечивая интуитивно понятную навигацию и возможность отменить отдельное изменение в два клика.
С помощью встроенного средства просмотра изменений Diff Viewer вы можете легко сравнить два файла или две версии одного файла (просмотреть локальные изменения или изменения в локальных файлах и их версиях в удаленном репозитории).
Доступ к Oracle, SQL Server, PostgreSQL, MySQL и другим базам данным осуществляется прямо из IDE. PyCharm помогает редактировать SQL-код, просматривать данные, изменять схемы и таблицы, выполнять запросы и анализировать схемы с помощью UML-диаграмм.
Код на SQL можно вставить в файлы на других языках и работать с ним в SQL-редакторе, который предоставляет подсветку синтаксиса, автодополнение, анализ кода на лету, форматирование и удобную навигацию.
PyCharm производит анализ кода библиотеки SQLAlchemy, на основании которого предлагает варианты автодополнения. IDE также поддерживает визуализацию данных при помощи диаграмм SQLAlchemy.
Редакция Professional Edition включает в себя новейшие возможности DataGrip для продуктивной работы с базами данных. Подробнее о возможностях DataGrip
Встроенная SSH-консоль позволяет подключаться к любому удаленному компьютеру и выполнять различные действия через SSH. Кроме того, можно настроить SSH Remote Tools для запуска любого удаленного инструмента прямо из IDE одним нажатием клавиши.
Использование удаленного интерпретатора Python вместо локального позволяет запускать, отлаживать и профилировать приложения в рабочих условиях или тестовой среде на обычном или виртуальном сервере с помощью Vagrant или Docker.
Vagrant — это удобный инструмент, встроенный в PyCharm, который помогает создавать воспроизводимое виртуальное окружение для разработки. Он позволяет поделиться с другими членами команды простым скриптом, который содержит в себе всю информацию о виртуальной машине. Другие разработчики смогут запустить идентичное виртуальное окружение, выполнив команду vagrant up.
PyCharm интегрирован с Docker, популярной платформой для распределенных приложений и контейнерной виртуализации. Выберите Python-интерпретатор из Docker-контейнера и используйте его в проекте для запуска, отладки и профилирования приложений.
Если вы используете систему отслеживания ошибок, подключите PyCharm к вашему баг-трекеру, чтобы работать с задачами прямо из IDE. Для этого нужно просто указать сервер вашего баг-трекера.
PyCharm поддерживает следующие системы отслеживания ошибок: Atlassian JIRA, JetBrains YouTrack, Lighthouse, Pivotal Tracker, GitHub, Redmine и Trac.