Помощь при написании кода

В PyCharm легко редактировать код благодаря автодополнению, проверке кода на лету, подсветке ошибок и быстрым исправлениям, автоматическому рефакторингу и удобной навигации.

Умный редактор

Подсветка синтаксиса

В PyCharm код читается легко благодаря возможностям настройки цветов подсветки синтаксиса Python и шаблонов Django. Просто выберите одну из предложенных цветовых схем.

Автоматическая расстановка отступов и форматирование

Отступы добавляются автоматически в начале новой строки. Проверка корректности отступов и автоматическое переформатирование производятся в соответствии с настройками стиля кода проекта.

Настраиваемый стиль кода

Выберите один из доступных стилей кода, разработанных для каждого из поддерживаемых языков.

Автодополнение

PyCharm предлагает варианты автодополнения для ключевых слов, классов и переменных на лету и по нажатию Ctrl+Space. Автодополнение учитывает контекст и предлагает наиболее подходящие варианты.

Выделение фрагментов кода и комментарии

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

Форматирование кода

Возможности форматирования и настройки стиля кода помогают писать понятный код, который легко поддерживать. В PyCharm есть встроенный форматер кода, отвечающий рекомендациям стандарта PEP-8 для Python, а также других стандартов для поддерживаемых языков.

Сниппеты

Программируйте еще быстрее, используя настраиваемые шаблоны фрагментов кода (live templates) и сниппеты.

Сворачивание кода

Сворачивание блоков кода, автоматическая расстановка скобок и кавычек, подсветка парных скобок и т. д.

Подсветка ошибок на лету

Ошибки отображаются, когда вы набираете код. Встроенная проверка орфографии предупредит об опечатках в текстах идентификаторов и комментариев.

Многокурсорность

В режиме многокурсорного редактирования вы можете вносить изменения в файл сразу в нескольких местах.

Анализ кода

Многочисленные инспекции проверяют код прямо в режиме редактирования, а также позволяют проанализировать весь проект на наличие ошибок и проблем в структуре кода.

Быстрые исправления

Для большинства инспекций доступны быстрые исправления, которые позволяют откорректировать код мгновенно. Нажмите Alt+Enter, чтобы просмотреть список возможных исправлений для любой инспекции.

Поиск дубликатов в коде

С помощью умного детектора дубликатов PyCharm проверяет код на наличие дублирующихся фрагментов. IDE предложит список фрагментов, которые следует преобразовать, а рефакторинги помогут избавиться от повторяющегося кода.

Конфигурируемые языковые вставки

Редактируйте код, написанный не на Python, внутри строковых литералов. При этом доступны функции автодополнения, подсветки ошибок и другие возможности IDE.

Автогенерация кода

Автоматическая генерация кода из использований с помощью быстрых исправлений, docstrings, верификации согласования кода; автообновление кода при рефакторинге. Автоматическая генерация шаблонов docstrings (для reStructuredText, Epytext, Google и NumPy).

Intention actions

Специальные действия intention actions помогают применять автоматические изменения к коду, чтобы улучшить его и упростить выполнение рутинных задач.

Удобная навигация

Search everywhere

Функция Search Everywhere поможет вам найти класс, файл, действие или элемент интерфейса IDE. Вызовите функцию Search Everywhere двойным нажатием Shift и начните вводить поисковой запрос. Вы также можете настроить необходимую область поиска.

Переход к классу, файлу или символу

Операции Go to class / file / symbol необходимы для быстрой навигации по проекту. Используйте символы подстановки и сокращения, чтобы искать объекты еще быстрее.

Переход к объявлению

Вызов функции Go to declaration открывает соответствующий файл и переходит к объявлению символа.

Find Usages (поиск использований)

Функция Find Usages находит вхождения любого символа (класса, метода, поля и т.д.) в текущем файле или по всему проекту.

Режим лупы

Режим лупы позволяет досконально изучить ваш код, просто перемещая курсор мыши по скроллбару. При наведении на подсветку ошибки или предупреждения появляется всплывающее окно с соответствующим фрагментом кода, а также само предупреждение или сообщение об ошибке.

Закладки и TODO-комментарии

Добавляйте закладки для удобной навигации по коду и оставляйте полезные напоминания. Наберите «TODO» в комментарии к коду, и PyCharm предупредит вас, если вы вдруг забудете завершить какую-то задачу. Все TODO-комментарии можно просматривать отдельно.

Быстрые и безопасные рафакторинги

PyCharm помогает вносить глобальные изменения в проект просто и безопасно. Локальные изменения проиводятся мгновенно. Рефакторинги доступны для проектов на Python, а также Django, Flask, Pyramid и других фреймворков.

Rename и Move

Рефакторинги Rename и Move применимы для файлов, функций, констант, классов, свойств, методов, параметров, локальных и глобальных переменных.

Рефакторинги извлечения

Используйте рефакторинги извлечения переменной/поля/константы/параметра и подстановки локальной переменной для улучшения структуры кода внутри метода.

Extract Method

Рефакторинг Extract Method позволяет извлечь метод из фрагмента кода, а рефакторинги Extract Superclass, Push Up, Pull Down помогут с реорганизацией иерархии классов и методов в вашем проекте.

Другие рефакторинги

Для эффективной реорганизации кода доступны и другие рефакторинги: изменение сигнатуры, конвертация в пакет/модуль Python, создание функции верхнего уровня и т. д.

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

Быстрый просмотр определений/документации

Просматривайте определения объектов и читайте документацию, не покидая IDE.

Инструменты просмотра документации

Документацию к стандартной библиотеке Python, Django, Google App Engine и научным библиотекам можно открыть в браузере с помощью Shift+F1.

Генерация шаблонов docstrings

Шаблоны docstrings для метода генерируются автоматически (для Epydoc, reStructuredText, Google и NumPy).

Подсветка и автодополнение кода

PyCharm предоставляет подсветку синтаксиса и автодополнение для тегов и параметров тегов внутри docstrings, а также проверку соответствия кода и автообновления в процессе рефакторинга.