PyCharm — эффективная разработка на Python

Программист должен сосредочить своё внимание на бизнес-логике создаваемого приложения и на его полезности. Именно для этого предназначен такой инструмент, как PyCharm от JetBrains. В нём решены задачи отладки и простой визуализации проектов, он экономит время и избавляет от рутинных операций.

Оглавление

В этой статье вы узнаете о том:

  • как установить PyCharm;
  • как записать код в PyCharm;
  • как загрузить код в PyCharm;
  • отладка и тестирование кода в PyCharm;
  • как изменить существующий проект в PyCharm;
  • поиск и навигация в PyCharm;
  • контроль версий в PyCharm;
  • плагины и внешние инструменты в PyCharm;
  • использование возможностей профессиональной версии PyCharm, таких как поддержка Django и режима научной разработки.;

Предполагается, что вы уже знакомы с Python и обладаете некоторым опытом разработки в своей системе. Используется Python 3.6. Скриншоты и демо-версии сделаны в Mac OS. Поскольку PyCharm работает на всех основных платформах, есть некоторые незначительные отличия элементов пользовательского интерфейса и, возможно, потребуется изменить некоторые команды.

Замечание:

PyCharm выпускается в трёх редакциях:

  1. PyCharm Edu — бесплатная версия для обучения;
  2. PyCharm Community — бесплатная версия и кроме обучения предназначена, главным образом, для развития Python;
  3. PyCharm Professional — платный вариант, который имеет полный функционал, зрелое сообщество, очень хорошо подходит для научной и Web разработок с поддержкой таких фреймворков, как Django и Flask, Database и SQL, таких научных инструментов, как Jupyter.

Для более подробной информации о различиях посмотрите PyCharm Editions Comparison Matrix от JetBrains. Кроме того, компания предоставляет бесплатные лицензии на версию Professional специальным предложением для студентов, преподавателей, проектам с открытым исходным кодом и им подобным командам.

Установка PyCharm

В этой статья я буду использовать PyCharm Community Edition 2019.1, так как она бесплатна и доступна на любой популярной платформе всем. Но смею вас заверить, что приведённые здесь примеры с успехом работают и на PyCharm Professional Edition 2019.1.

Для установки PyCharm рекомендую использовать JetBrains Toolbox App. С его помощью вы сможете установить любые продукты JetBrains или несколько версий одного и того же продукта, при необходимости легко обновлять, откатывать и удалять любые инструменты. Вы также сможете быстро открыть любой проект в любой предыдущей версии.

Для установки Toolbox App прочитайте фирменную документацию от JetBrains. Операционная система будет определена автоматически при загрузке и для вас будут предложены корректные пошаговые инструкции. Если этого не произойдёт, то выберите ОС «в рукопашную» в поле справа вверху:

Список ОС для установки ПО Jetbrains
Список ОС для установки ПО Jetbrains

После установки загрузите приложение и подтвердите своё согласие с условиями использования софта. На закладке Tools посмотрите список доступных продуктов. Выберите PyCharm Community и нажмите Install:

Установка PyCharm с помощью Toolbox App
Установка PyCharm с помощью Toolbox App

Вот и всё! PyCharm уже готов к работе на вашей машине. Если вам не нравится Toolbox app, то воспользуйтесь автономной установкой PyCharm.

Запустите PyCharm и увидите всплывающее окно настройки импорта:

Настройки импорта
Настройки импорта

PyCharm автоматически определит новую установку и предложит вам Do not import settings (Не импортировать настройки). Согласитесь и нажмите OK, выберите раскладку клавиш PyCharm по умолчанию и нажмите Next: UI Themes (Далее: тема пользовательского интерфейса) справа внизу:

Схема раскладки клавиш PyCharm
Схема раскладки клавиш PyCharm

PyCharm предложит вам тёмную тему под названием Darcula или светлую тему. Выберите то, что вам нравится и нажмите кнопку Next: Launcher Script (Далее: сценарий запуска):

Страница настройки темы PyCharm
Страница настройки темы PyCharm

Здесь на протяжении всего урока будет использоваться тёмная тема Darcula. Однако, вы можете найти и установить другую тему, используя плагины, или импортировать идеальную для вас тему IntelliJ.

На следующей странице оставьте всё по-умолчанию и нажмите Next: Featured plugins (Далее: Рекомендуемые плагины). Здесь PyCharm покажет вам список плагинов, которые вы можете немедленно установить, большинство пользователей любят это делать. Нажмите Start using PyCharm (Стартовать PyCharm) и теперь можно смело записывать код!

Запись кода в PyCharm

В PyCharm всё делается в контексте проекта. Поэтому для начала его надо создать.

После установки и загрузки PyCharm в окне приветствия нажмите Create New Project (создать новый проект) и вы появится окно для создания нового проекта New Project:

Создание нового проекта pycharm
Создание нового проекта pycharm

Укажите местоположение проекта и раскройте список Project Interpreter. Здесь у вас есть возможность создать новый интерпретатор для своего нового проекта или повторно использовать существующий. Выберите New environment using. Прямо рядом с ним у вас есть выпадающий список для выбора одного из вариантов Virtualenv, Pipenv или Conda, которые являются инструментами поддержки необходимых для разный проектов зависимостей отдельно, создавая для этого изолированные среды Python.

Если хотите, выберите для этого урока Virtualenv. При желании можно указать местоположение среды и выбрать базовый интерпретатор из списка, в котором должны присутствовать все интерпретаторы Python, например, Python 2.7 и Python 3.6, установленные в вашей операционной системе. Обычно по умолчанию все бывает в порядке, но если Python у вас не установлен, то придётся это сделать. Пройдите на сайт python.org, скачайте дистрибутив и сделайте установку интерпритатора. Затем вы должны выбрать блоки для наследования глобальных пакетов сайтов в вашей новой среде и сделать их доступными для всех других проектов. Пока не обращайте на них внимание и оставьте невыбранными.

В правом нижнем углу нажмите кнопочку Create и вы увидите созданный новый проект:

Создание нового проекта в PyCharm
Создание нового проекта в PyCharm

Также появится небольшое всплывающее окно Tip of the Day (Совет дня), где при каждом запуске даётся какой-то случайный совет от PyCharm. Прочитайте и просто закройте это окно.

Настало время начать запись кода на Python. Одновременно нажмите Cmd+N если у вас Mac или Alt+Ins если Windows или Linux. После чего выберите Python File. Это можно сделать воспользовавшись главным меню File → New. Назовите новый файл guess_game.py и нажмите OK. Вы увидите окно PyCharm, похожее на это:

Создание нового файла в PyCharm
Создание нового файла в PyCharm

Давайте быстренько напишем тестовый код, реализующий простую игру на угадывание — программа генерирует секретное число, которое должен угадать человек. На каждое предложенное человеком число программа скажет, было оно меньше или больше секретного. Игра заканчивается, когда человек угадает число. Вот этот код gauss-game.py:

from random import randint

def play():
    random_int = randint(0, 100)

    while True:
        user_guess = int(input("Запишите целое число в диапазоне от 0 до 100?"))
        if user_guess == randint:
            print(f"Вы угадали число ({random_int}). Поздравляю!")
            break
        if user_guess < random_int:
            print("Ваше число меньше секретного.")
            continue
        if user_guess > random_int:
            print("Выше число больше секретного.")
            continue

if __name__ == '__main__':
    play()

Не копируйте, а введите этот код напрямую и увидите что‑то вроде этого:

 Intelligent Coding Assistance — интеллектуальный ассистент кодирования
Intelligent Coding Assistance — интеллектуальный ассистент кодирования

Как видите, в PyCharm есть Intelligent Coding Assistance — интеллектуальный ассистент кодирования, который делает автодополнение кода, проверяет синтаксис, сообщает об ошибках и даёт рекомендации по их исправлению. В частности, заметьте, когда вы записали main и нажали Tab, PyCharm автоматически полностью завершил всю конструкцию main за вас.

Так-же обратите внимание, что если перед if поставить точку .if и нажать Tab, то PyCharm полностью за вас напишет конструкцию if. То же самое верно для True.while — работает PyCharm’s Postfix completions (постфиксное дополнение кода) и не надо лишний раз нажимать на Enter для перехода но новую строку.

Загрузка кода в PyCharm

Теперь, когда вы написали код, пришло время запустить его.

У вас есть три способа запуска этой программы:

  1. Используйте клавиши Ctrl+Shift+R на Mac или Ctrl+Shift+F10 на Windows или Linux.
  2. Нажмите правую кнопку мыши в поле редактирования и в меню выберите Run ‘guess_game’.
  3. Поскольку в этой программе есть предложение __main__, то щелкните на маленькую зелёную стрелку слева от фразы __main__ и выберите Run ‘guess_game’отсюда.

Любой из этих вариантов приведёт к запуска программы, и вы увидите панель «Run Tool» в нижней части окна, с выводом кода, показывающим диалог.

Запуск приложения в PyCharm
Запуск приложения в PyCharm

Немного поиграйте и увидите, что секретное число угадать можно. Совет от профессионала: начните с 50.

Отладка в PyCharm

Вы нашли секретное число? Если так, то, возможно, заметили что-то странное, вместо того, чтобы печатать поздравление и завершать игру программа запускается заново. Где‑то прямо здесь есть ошибка. Чтобы узнать, почему программа запускается заново, вы должны её отладить.

Сначала установите точку останова, нажав на пустое место слева от строки № 8:

Точки останова для отладки
Точки останова для отладки

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

  1. Нажмите Ctrl+Shift+D на Mac или Shift+Alt+F9 на Windows или Linux.
  2. Щелчком правой кнопки мыши в поле редактирования выберите Debug ‘guess_game’.
  3. Щёлкните на маленькую зелёную стрелку слева от фразы __main__ и выберите Debug ‘guess_game отсюда.

После этого вы увидите открывшиеся внизу окно Debugger:

Старт отладки в PyCharm
Старт отладки в PyCharm

Для отладки программы выполните следующие шаги:

  1. Обратите внимание, что текущая строка выделена синим цветом.
  2. Посмотрите, что random_int и его значение перечислены в окне отладки. Запишите это значение. (На рисунке число 85.)
  3. Нажмите F8 для выполнения текущей строки и перехода к следующей. Если в текущей строке вызывается функции, то при необходимости в неё попасть нажмите F7. По-шагово выполняя операторы, в окне отладки вы сможете наблюдать все изменения значений переменных, обновляемые автоматически.
  4. Обратите внимание, что рядом с открывшейся вкладкой «Debugger» находится вкладка «Console», у которых совершенно разное функциональное назначение. На вкладке Console вы будете взаимодействовать со своей программой, а на вкладке Debugger вы будете выполнять действия по отладке.
  5. Переключайтесь на вкладку Console для диалога с вашим guess.
  6. Запишите ваше число и нажмите Enter.
  7. Переключитесь назад на вкладку Debugger.
  8. Нажмите F8 для выполнения оператора if. Заметьте, вы на строке 14. Постойте! Почему не произошёл переход к 11 строке? Причина в том, что условие в операторе if 10 строки приняло значение False. Но почему False если введённое число то, что надо?
  9. Внимательно посмотрите на строчку 10 и заметите, что мы сравниваем user_guess не с тем, что надо. Вместо random_int делается сравнение с функцией randint, импортированной из пакета random.
  10. Измените на random_int, перезапустите и сделайте пошаговое выполнение операторов. Вы видите, произошёл переход к строке 11, а значение условия стало True:

Debugging Script in PyCharm

Поздравляю! Ошибка найдена и исправлена.

Тестирование в PyCharm

Без тестирования нельзя гарантировать надёжность работы любого приложения. PyCharm помогает быстро и комфортно написать и загрузить тесты. По-умолчанию используется unittest, но кроме него можно использовать такие фреймворки, как pytest, nose, doctest, tox и trial. Например, для своего проекта можно выбрать pytest:

  1. Откройте диалог настройки Settings/Preferences → Tools → Python Integrated Tools.
  2. Выберите pytest в поле Default test runner.
  3. Нажмите OK для сохранения настроек.

В нашем примере мы будем использовать загрузчик теста по‑умолчанию unittest.

В том же самом проекте, где записана игра, создайте файл с именем calculator.py и запишите в него код класса Calculator:

class Calculator:
    def add(self, a, b):
        return a + b
    def multiply(self, a, b):
        return a * b

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

  • Нажмите Shift+Cmd+T на Mac или Ctrl+Shift+T на Windows или Linux.
  • Правой кнопкой мыши в поле редактирования выберите Go To и Test.
  • В основном меню проследуйте Navigate → Test.

Выберите Create New Test (Создать новый тест) и посмотрите на окно:

Создание теста в PyCharm
Создание теста в PyCharm

Значения полей Target directory (целевой каталог), Test file name (Имя файла теста) и Test class name (Имя класса теста) оставьте по‑умолчанию. Для тестирования отметьте оба метода и нажмите на OK. Вуаля! PyCharm автоматически создаст для вас файл с именем test_calculator.py и заглушки для тестов:

from unittest import TestCase
class TestCalculator(TestCase):
    def test_add(self):
        self.fail()
    def test_multiply(self):
        self.fail()

Загрузите тест одним из следующих способов:

  • Нажмите Ctrl+R на Mac или Shift+F10 на Windows или Linux.
  • Щёлкните правой кнопкой мыши в поле редактирования и выберите Run ‘Unittests for test_calculator.py’.
  • Щёлкните на маленькой зелёной стрелке слева от имени класс теста и выберите Run ‘Unittests for test_calculator.py’.

Вы увидите открытое окно тестов со всеми ошибками:

Результат тестирования — ошибки
Результат тестирования — ошибки

Обратите внимание, что у вас есть иерархия результатов теста слева и терминал для вывода результатов справа.

Теперь реализуем test_add, изменив код на следующий:

from unittest import TestCase
from calculator import Calculator
class TestCalculator(TestCase):
    def test_add(self):
        self.calculator = Calculator()
        self.assertEqual(self.calculator.add(3, 4), 7)
    def test_multiply(self):
        self.fail()

Запустите тесты еще раз и увидите, что один тест пройден, а другой нет. Изучите настройки теста, чтобы показывать пройденные тесты, проигнорированные тесты, сортировку тестов по алфавиту и по времени исполнения:

Загрузка тестов в PyCharm
Загрузка тестов в PyCharm

Обратите внимание, что метод sleep (0.1), который вы видите на картинке выше, намеренно используется для замедления одного из тестов, чтобы показать, как работает сортировка по времени исполнения.

Редактирование существующего проекта в PyCharm

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

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

После чего разархивируйте и откройте его в PyCharm одним из следующих способов:

  • Нажмите File → Open в главном меню.
  • Нажмите Open в окне Welcome Screen, если вы только что загрузили PyCharm.

После любого из этих шагов найдите на своём компьютере папку, содержащую проект, и откройте ее.

Если проект уже содержит виртуальную среду, то PyCharm будет автоматически её использовать и сделает интерпретатором проекта.

Если вы хотите создать свою virtualenv — виртуальную среду, что обычно и делается, то откройте Preferences, нажав на Mac Cmd+, или Settings на Windows или Linux Ctrl+Alt+S и найдите секцию Project: ProjectName. Откройте выпадающий список и выберите Project Interpreter:

Определение виртуальной среды проекта в PyCharm
Определение виртуальной среды проекта в PyCharm

Выберите virtualenv в выпадающем списке. Если такого выбора в списке нет, то для настройки спарва от выпадающего списка нажмите кнопку Add…. Дальнешие шаги такие же, как при создании нового проекта.

Поиск и навигация в PyCharm

В большом проекте одному человеку трудно запомнить что‑где находится, поэтому очень важны механизмы быстрой ориентации и поиска того, что нужно. К нашему удовольствию в PyCharm это есть. Используйте проект, который вы открыли раньше и попрактикуйтесь в нажатии клавиш в следующих сочетаниях:

  • Поиск фрагмента текста в текущем файле: нажмите Cmd+F на Mac или Ctrl+F на Windows или Linux.
  • Поиск фрагмента во всем проекте: нажмите Cmd+Shift+F на Mac или Ctrl+Shift+F на Windows или Linux.
  • Поиск класса: нажмите Cmd+O на Mac или Ctrl+N на Windows или Linux.
  • Поиск файла: нажмите Cmd+Shift+O на Mac или Ctrl+Shift+N на Windows или Linux.
  • Поиск везде, если не знаете, что конкретно ищете — файл, класс или фрагмент кода: нажмите Shift дважды.

Что касается навигации, шпаргалка ниже сэкономит вам массу времени:

  • Переход к объявлению переменной: нажмите Cmd на Mac или Ctrl на Windows или Linux и щёлкните по переменной.
  • Поиск используемого класса, метода или любого символа: нажмите Alt+F7.
  • Просмотр последних изменений: нажмите Shift+Alt+C или выберите View → Recent Changes в главном меню.
  • Просмотр ваших последних файлов: нажмите Cmd+E на Mac или Ctrl+E на Windows или Linux или в главном меню прйдите View → Recent Files.
  • G>Переход назад и вперед по истории навигации после того, как вы уже что‑то сделали: нажмите Cmd+[ / Cmd+] на Mac или Ctrl+Alt+Left / Ctrl+Alt+Right на Windows или Linux.

Для более подробного знакомства с этим вопросом читайте официальную документацию.

Управление версиями в PyCharm

Система управления версиями, типа, Git или Mercurial является важнейшим инструментом в современном мире разработки программного обеспечения. Поэтому так важна поддержка их в любой IDE. PyCharm делает это очень хорошо, прекрасно интегрируясь с Git (и Github), а так же с другими популярными системами такими, как Mercurial, Perforce и Subversion.

Настройка систем управления версиями

Что-бы включить интеграцию с системой управления версиями пройдите VCS → VCS Operations Popup… в верхнем меню или нажмите клавиши Ctrl+V на Mac или Alt+` на Windows или Linux. Выберите Enable Version Control Integration…. Посмотрите на открывшееся окно:

Интеграция с системами управления версиями в PyCharm
Интеграция с системами управления версиями в PyCharm

Выберите Git из выпадающего списка, нажмите OK и в вашем проекте включена система управления версиями. Обратите внимание, что если вы открыли существующий проект с включенным управлением версиями, PyCharm увидит это и автоматически подключится к ней.

Теперь, если вы пройдете VCS Operations Popup…, то увидите всплывающее окно с опциями git add, git stash, git branch, git commit, git push и много другое:

Работа с системой управления версиями в PyCharm
Работа с системой управления версиями в PyCharm

Если вы не можете найти то, что нужно, то, скорее всего, сможете это сделать, перейдя в верхнем меню в VCS, выбрав Git. Здесь даже можно создавать и просматривать запросы на извлечение.

Коммиты и разрешение конфликтов

Есть две особенности интеграции систем управления версиями в PyCharm, которые лично я использую и получаю от этого огромное удовольствие! Допустим, вы закончили свою работу и хотите это как-то отметить. Перейдите VCS → VCS Operations Popup… → Commit… или нажмите Cmd+K на Mac или Ctrl+K на Windows или Linux. Посмотрите на появившееся окно:

Окно коммита в PyCharm
Окно коммита в PyCharm

В этом окне можно:

  1. Выбрать файлы для фиксации;
  2. Записать сообщение о фиксации;
  3. Выполнить все команды проверки и очистки перед фиксацией;
  4. Посмотреть различия в изменениях;
  5. Зафиксировать и нажать стрелку справа от кнопки Commit и выбрать Commit and Push….

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

При работе в команде случаются конфликты слияния. Кто-то фиксирует изменения в файле, над которым вы сейчас работаете, но его изменения пересекаются с вашими, потому что вы оба поменяли одни и те же строки. Система управления версиями не сможет самостоятельно выяснить, какие изменения ей зафиксить ваши или вашего товарища по команде. Таким образом, могут получиться эти неудачные стрелки и символы:

Конфликт в PyCharm
Конфликт в PyCharm

Всё это выглядит странно и трудно понять, что надо удалить, а что оставить. PyCharm на помощь! У него гораздо приятнее и чище способ разрешения конфликтов. Перейдите к VCS в верхнем меню, выберите Git, а затем Resolve conflicts…. Выберите файл, конфликты которого вы хотите разрешить, и нажмите Merge. Вы увидите следующее открытое окно:

Окно разрешения конфликтов в PyCharm
Окно разрешения конфликтов в PyCharm

В левой колонке вы увидите свои изменения. Справа — изменения, внесенные вашим товарищем по команде. Наконец, в средней колонке вы увидите результат. Конфликтующие строки подсвечиваются и вы можете видеть маленькие X and >>/<< рядом с этими строками. Нажмите стрелки для того, чтобы принять изменения, а X, что бы отклонить. После того, как вы разрулите все эти конфликты, нажмите кнопку Apply:

Конфликт разрешен
Конфликт разрешен

В приведенной выше картинке в первой противоречивой строке автор отказался от своих изменений и принял изменения своих товарищей по команде. А во второй строке наоборот, автор принял свои собственные изменения и отклонил изменения своих партнеров по команде.

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

Плагины и внешние инструменты в PyCharm

В PyCharm вы найдёте почти все, что нужно для разработки. Если чего‑то нет, то, скорее всего, есть плагин, реализующий ту функциональность, которая вам нужна. Например, с помощью плагинов можно:

  • Добавить поддержку для различных языков и структур;
  • Увеличить свою пропродуктивность, используя быстрые подсказки, средства просмотра файлов и т.д.;
  • Выучить новый язык программирования с помощью упражнений по кодированию

Например, IdeaVim добавит иммитацию Vim в ваш PyCharm. Ну, если вам нравится Vim, почему-бы это не сделать.

Измените тему своего PyCharm на Material Theme UI и посмотрите, как это выглядит:

Тема Material Design в PyCharm
Тема Material Design в PyCharm

Vue.js добавляет поддержку проектов Vue.js. Markdown предоставляет возможность редактировать файлы Markdown в среде IDE и просматривать HTML‑код в режиме предварительного просмотра в браузере. Вы можете найти и установить все доступные плагины, выбрав Preferences → Plugins на Mac или Settings → Plugins на Windows или Linux на вкладке Marketplace, но это уже за деньги:

Маркеплейс плагинов для PyCharm
Маркеплейс плагинов для PyCharm

Если вы ничего не нашли, то можете разработать свой плагин.

Если вы не можете найти нужный плагин и не хотите разрабатывать свой собственный, потому что в PyPI уже есть пакет, то его можно добавить в PyCharm в качестве внешнего инструмента. Так, например, анализатор кода Flake8.

Сначала установите flake8 в своей virtualenv, используя pip install flake8 в терминале приложения. Так же успешно можно использовать пакет интегрированный в PyCharm:

Терминал в PyCharm
Терминал в PyCharm

Далее пройдите в меню Preferences → Tools на Mac или Settings → Tools для Windows/Linux и выберите External Tools. Щёлкните на маленькую кнопку + (1). В новом всплывающем окне вставьте детали, как показано ниже, и нажмите ОК для обоих окон:

Установка Flake8 в PyCharm
Установка Flake8 в PyCharm

Здесь Program (2) относится к исполняемому файлу Flake8, который находится в папке /bin вашей виртуальной среды. Arguments (3) указывают, какой файл вы хотите проанализировать с помощью Flake8. Working directory — рабочий каталог вашего проекта.

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

Обратите свой взор на то, что называется Макрос. Макросы позволяют задавать значения переменным в формате $name$, которые могут меняться в зависимости от вашего контекста. Например, $FileName$ — это first.py, когда вы редактируете first.py, а когда вы редактируете second.py, то это second.py. Вы можете просмотреть их список и вставить любой из них, нажав на кнопки Insert Macro…. Поскольку здесь вы использовали макросы, значения будут меняться в зависимости от проекта, над которым вы сейчас работаете, и Flake8 продолжит правильно выполнять свою работу.

Чтобы это понять, создайте файл example.py и запишите туда следующий код:

CONSTANT_VAR = 1

def add(a, b):
    c = "hello"
    return a + b

То, что написано, немного не по правилам Flake8. Нажмите правую кнопку ыша на поле редактирования этого файла. Выберите External Tools и Flake8. Вуа‑ля! Результат анализа Flake8 можно посмотреть внизу:

Результат анализа кода Flake8, выведенный в PyCharm
Результат анализа кода Flake8, выведенный в PyCharm

Для ускорения работы с внешними инструментами можно добавить клавиши быстрого доступа. Перейдём к Preferences на Mac или к Settings на Windows или Linux. Затем Keymap → External Tools → External Tools. Дважды щёлкните на Flake8 и выберите Add Keyboard Shortcut. Посмотрите сюда:

Добавление клавиш быстрого доступа в PyCharm
Добавление клавиш быстрого доступа в PyCharm

На картинке выше показано, как назначены клавиши быстрого доступа Ctrl+Alt+A для загрузки этого инструмента. Добавьте свои клавиши быстрого доступа в текстовое поле и нажмите OK для обоих окон. Теперь вы можете использовать эти клавиши для загрузки Flake8 и анализа файла, над которым сейчас работаете.

Возможности профессиональной версии PyCharm

PyCharm Professional — это платная версия PyCharm с огромным количеством готовых функций и возможностей интеграции. В этом разделе, в основном, будет представлен обзор главных функций и ссылки на официальную документацию, где каждая функция подробно обсуждается. Помните, что ни одна из следующих функций не доступна в версии Community.

Поддержка Django

PyCharm поддерживает Django, один из самых популярных и любимых веб‑фреймворков Python. Что бы убедиться в его доступности проделайте следующее:

  1. Откройте Preferences на Mac или Settings на Windows или Linux.
  2. Выберите Languages and Frameworks.
  3. Выберите Django.
  4. Проверьте установлена ли галочка на Enable Django support?Если нет, установите.
  5. Примените изменения.

Теперь, когда вы включили поддержку Django, ваше путешествие при разработке с Django станет наиболее приятным с PyCharm:

  • При создании проекта у вас будет выбран тип проекта Django. И это означает, что в проекте такого типа у вас будут все необходимые файлы и настройки. Это эквивалентно использованию django-admin startproject mysite.
  • Вы можете загрузить manage.py непосредственно из PyCharm.
  • Поддержка в шаблоне Django включает:
    • синтаксис и подсветку ошибок.
    • Автозавершение кода.
    • Навигацию.
    • Завершение имен блоков.
    • Завершение пользовательских тегов и фильтров.
    • Быстрый доступ к документации по тегам и фильтрам.
    • Возможность их отладки.
  • Автоавершение кода во всех других частях Django, таких как представления, URL‑адреса и модели, а также поддержка анализа кода для Django ORM.
  • Диаграммы зависимостей для моделей Django.

Более подробная информация о поддержке Django смотрите в официальной документации.

Поддержка баз данных

Современная разработка баз данных — сложная задача со множеством вспомогательных систем и рабочих процессов. Вот почему JetBrains, компания, стоящая за PyCharm, разработала для этого отдельную IDE DataGrip. Это отдельный продукт от PyCharm с отдельной лицензией.

К счастью, PyCharm поддерживает все функции, доступные в DataGrip через плагин Database tools and SQL, который включен по умолчанию. С его помощью можно запрашивать, создавать и управлять базами данных независимо от того, работают ли они локально, на сервере или в облаке. Плагин поддерживает MySQL, PostgreSQL, Microsoft SQL Server, SQLite, MariaDB, Oracle, Apache Cassandra и другие. Для получения дополнительной информации о том, что вы можете сделать с этим плагином, посмотрите полную документацию по поддержке баз данных.

Визуализация параллельных потоков

Django Channels, asyncio и последние фреймворки, такие как Starlette являются примерами растущей популярности асинхронного программирования на Python. Несмотря на то, что асинхронные программы действительно приносят много пользы, известно, что их довольно сложно писать и отлаживать. В таких случаях визуализация параллельных потоков может быть именно тем, что доктор прописал. Она помогает полностью контролировать свои многопоточные приложения и оптимизировать их.

Проверьте подробную документацию этой функции для получения более подробной информации.

Более подробная информация содержится в подробной документации об этой функции.

Профилировщик

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

  1. vmprof
  2. yappi
  3. cProfile

Если у вас не установлен vmprof или yappi, просто вернитесь к стандартному cProfile. Он хорошо документирован и здесь я не буду пересказывать эту документацию.

Режим научной разработки

Python — это язык не только для общего и веб‑программирования. За последние годы он стал лучшим инструментом для науки о данных и машинного обучения. Своей популярностью он обязан своим инструментам и библиотекам, таким как NumPy, SciPy, scikit-learn, Matplotlib, Jupyter и другим. При наличии таких мощных библиотек необходима мощная IDE для поддержки всех функций, таких как построение графиков и анализ этих библиотек. PyCharm предоставляет все, что нужно, исчерпывющая документация здесь.

Удалённая разработка

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

С помощью PyCharm можно отлаживать свои приложение, используя интерпретатор с другого компьютера, например, на виртуальной машине Linux. В результате вы можете использовать тот же интерпретатор, что и ваша рабочая среда. Это позволяет исправлять и избегать многих ошибок. Прочитайте об этом в официальной документации.

Заключение

PyCharm — одна из лучших, если не самая лучшая, полнофункциональная, специализированная и универсальная IDE для разработки на Python. Он обладает массой возможностей, которые экономят время, помогая вам с рутинными задачами. Теперь вы знаете, как быть ним продуктивным!

Здесь вы узнали о многом, в том числе:

  • Как установить PyCharm;
  • Как записать код в PyCharm;
  • Как загрузить код в PyCharm;
  • Отладка и тестирование кода в PyCharm;
  • Как изменить существующий проект в PyCharm;
  • Поиск и навигация в PyCharm;
  • Контроль версий в PyCharm;
  • Плагины и внешние инструменты в PyCharm;
  • Использование возможностей профессиональной версии PyCharm, таких как поддержка Django и режима научной разработки.;

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

Оригинал: PyCharm — эффективная разработка на PythonР

Print Friendly, PDF & Email

CC BY-NC 4.0 PyCharm — эффективная разработка на Python, опубликовано К ВВ, лицензия — Creative Commons Attribution-NonCommercial 4.0 International.


Респект и уважуха

Добавить комментарий