PyCharm для продуктивной разработки Python (Руководство)

PyCharm для продуктивной разработки Python (Руководство)

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

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

  • Установка PyCharm

  • Написание кода в PyCharm

  • Выполнение вашего кода в PyCharm

  • Отладка и тестирование вашего кода в PyCharm

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

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

  • Использование контроля версий в PyCharm

  • Использование плагинов и внешних инструментов в PyCharm

  • Использование функций PyCharm Professional, таких как поддержка Django и научный режим

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

Note:

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

  1. PyCharm Edu предоставляется бесплатно и в образовательных целях.

  2. PyCharm Community также бесплатен и предназначен для разработки на чистом Python.

  3. PyCharm Professional платный, имеет все, что есть в версии Community, а также очень хорошо подходит для веб-разработки и научных разработок с поддержкой таких фреймворков, как Django и Flask, Database и SQL, а также научных инструментов, таких как Jupyter.

Чтобы узнать больше об их различиях, ознакомьтесь сPyCharm Editions Comparison Matrix от JetBrains. У компании также естьspecial offers для студентов, преподавателей, проектов с открытым исходным кодом и других кейсов.

Clone Repo:Click here to clone the repo you’ll use, чтобы изучить в этом руководстве функции PyCharm, ориентированные на проекты.

Установка PyCharm

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

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

Чтобы установить приложение Toolbox, обратитесь кdocumentation от JetBrains. Это автоматически даст вам правильные инструкции в зависимости от вашей ОС. В случае, если она не распознает вашу ОС правильно, вы всегда можете найти ее в раскрывающемся списке в правом верхнем углу:

List of OSes in the JetBrains website

После установки запустите приложение и примите пользовательское соглашение. На вкладкеTools вы увидите список доступных продуктов. Найдите там сообщество PyCharm и нажмитеInstall:

PyCharm installed with the Toolbox app

Вуаля! У вас есть PyCharm на вашем компьютере. Если вы не хотите использовать приложение Toolbox, вы также можете выполнитьstand-alone installation of PyCharm.

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

PyCharm Import Settings Popup

PyCharm автоматически определит, что это новая установка, и выберет для васDo not import settings. ЩелкнитеOK, и PyCharm попросит вас выбрать схему раскладки клавиатуры. Оставьте значение по умолчанию и щелкнитеNext: UI Themes справа внизу:

PyCharm Keymap Scheme

Затем PyCharm попросит вас выбрать темную тему под названием Darcula или светлую тему. Выберите то, что вам больше нравится, и нажмитеNext: Launcher Script:

PyCharm Set UI Theme Page

В этом уроке я буду использовать темную тему Даркула. Вы можете найти и установить другие темы какplugins или какimport them.

На следующей странице оставьте значения по умолчанию и щелкнитеNext: Featured plugins. Там PyCharm покажет вам список плагинов, которые вы, возможно, захотите установить, потому что большинству пользователей нравится их использовать. ЩелкнитеStart using PyCharm, и теперь вы готовы написать код!

Написание кода в PyCharm

В PyCharm вы все делаете в контекстеproject. Таким образом, первое, что вам нужно сделать, это создать.

После установки и открытия PyCharm вы попадаете на экран приветствия. НажмитеCreate New Project, и вы увидите всплывающее окноNew Project:

New Project in PyCharm

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

Вы можете выбрать то, что вам нравится, но для этого урока используетсяVirtualenv. При желании вы можете указать местоположение среды и выбрать базовый интерпретатор из списка, который представляет собой список интерпретаторов Python (таких как Python2.7 и Python3.6), установленных в вашей системе. Обычно с настройками по умолчанию все в порядке. Затем вы должны выбрать блоки для наследования глобальных пакетов сайтов в вашей новой среде и сделать их доступными для всех других проектов. Оставьте их невыбранными.

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

Project created in PyCharm

Вы также увидите небольшое всплывающее окноTip of the Day, в котором PyCharm дает вам один трюк, который нужно изучить при каждом запуске. Идите и закройте это всплывающее окно.

Настало время начать новую программу на Python. ВведитеCmd[.kbd .key-n]#N## if you are on Mac or [.keys]#[.kbd .key-alt]##Alt##[.kbd .key-insert]#Ins #, если вы работаете в Windows или Linux. Затем выберитеPython File. Вы также можете выбратьFile → New из меню. Назовите новый файлguess_game.py и щелкнитеOK. Вы увидите окно PyCharm, подобное следующему:

PyCharm New File

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

 1 from random import randint
 2
 3 def play():
 4     random_int = randint(0, 100)
 5
 6     while True:
 7         user_guess = int(input("What number did we guess (0-100)?"))
 8
 9         if user_guess == randint:
10             print(f"You found the number ({random_int}). Congrats!")
11             break
12
13         if user_guess < random_int:
14             print("Your number is less than the number we guessed.")
15             continue
16
17         if user_guess > random_int:
18             print("Your number is more than the number we guessed.")
19             continue
20
21
22 if __name__ == '__main__':
23     play()

Введите этот код напрямую, а не копировать и вставлять. Вы увидите что-то вроде этого:

Typing Guessing Game

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

Также обратите внимание, как, если вы забыли ввестиif перед условием, добавить.if, а затем нажать[.kbd .key-tab]#Tab #, PyCharm исправит предложениеif за вас. То же самое и сTrue.while. ЭтоPyCharm’s Postfix completions работает на вас, чтобы уменьшить количество обратных переходов курсора.

Запуск кода в PyCharm

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

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

  1. Используйте ярлыкCtrl[.kbd .key-shift]##Shift##[.kbd .key-r]#R on Mac or [.keys] [.kbd .key-control] Ctrl[.kbd .key-shift]##Shift##[.kbd .key-f10]#F10 в Windows или Linux.

  2. Щелкните фон правой кнопкой мыши и выберите в менюRun ‘guess_game’.

  3. Поскольку в этой программе есть предложение__main__, вы можете щелкнуть маленькую зеленую стрелку слева от предложения__main__ и выбрать оттудаRun ‘guess_game’.

Используйте любой из приведенных выше вариантов для запуска программы, и вы увидите панель «Run Tool», появившуюся в нижней части окна, с выводом кода, показывающим:

Running a script in PyCharm

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

Отладка в PyCharm

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

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

Debug breakpoint in PyCharm

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

  1. НажмитеCtrl[.kbd .key-shift]##Shift##[.kbd .key-d]#D on Mac or [.keys] [.kbd .key-shift] Shift[.kbd .key-alt]##Alt##[.kbd .key-f9]#F9 в Windows или Linux.

  2. Щелкните фон правой кнопкой мыши и выберитеDebug ‘guess_game’.

  3. Щелкните маленькую зеленую стрелку слева от предложения__main__ и выберите оттудаDebug ‘guess_game.

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

Start of debugging in PyCharm

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

  1. Обратите внимание, что текущая строка выделена синим цветом.

  2. Посмотрите, чтоrandom_int и его значение перечислены в окне отладки. Запишите этот номер. (На рисунке номер 85.)

  3. При необходимости нажмите[.kbd .key-f8]#F8 to execute the current line and step over to the next one. You can also use [.keys] [.kbd .key-f7] # F7, чтобы перейти кinto функции в текущей строке. Когда вы продолжите выполнять операторы, изменения в переменных будут автоматически отражены в окне отладчика.

  4. Обратите внимание, что рядом с открывшейся вкладкой «Отладчик» находится вкладка «Консоль». Эта вкладка Консоль и вкладка Отладчик являются взаимоисключающими. На вкладке Консоль вы будете взаимодействовать с вашей программой, а на вкладке Отладчик вы будете выполнять действия по отладке.

  5. Переключитесь на вкладку Консоль, чтобы ввести свое предположение.

  6. Введите показанное число и нажмите[.kbd .key-enter]#Enter #.

  7. Вернитесь на вкладку «Отладчик».

  8. Нажмите[.kbd .key-f8]#F8 # еще раз, чтобы оценить операторif. Обратите внимание, что вы сейчас на линии 14. Но подожди минутку! Почему он не пошел на линию 11? Причина в том, что операторif в строке 10 оценивается какFalse. Но почему при вводе выбранного числа он оценивается какFalse?

  9. Внимательно посмотрите на строку 10 и обратите внимание, что мы сравниваемuser_guess не с тем. Вместо того, чтобы сравнивать его сrandom_int, мы сравниваем его сrandint, функцией, которая была импортирована из пакетаrandom.

  10. Измените его наrandom_int, перезапустите отладку и снова выполните те же действия. Вы увидите, что на этот раз он перейдет к строке 11, а строка 10 будет оценивать какTrue:

Debugging Script in PyCharm

Поздравляем! Вы исправили ошибку.

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

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

  1. Откройте диалоговое окно настроекSettings/Preferences → Tools → Python Integrated Tools.

  2. Выберитеpytest в поле Запуск теста по умолчанию.

  3. ЩелкнитеOK, чтобы сохранить настройки.

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

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

 1 class Calculator:
 2     def add(self, a, b):
 3         return a + b
 4
 5     def multiply(self, a, b):
 6         return a * b

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

  • НажмитеShift[.kbd .key-command]##Cmd##[.kbd .key-t]#T on Mac or [.keys] [.kbd .key-control] Ctrl[.kbd .key-shift]##Shift##[.kbd .key-t]#T в Windows или Linux.

  • Щелкните правой кнопкой мыши фон класса и выберитеGo To иTest.

  • В главном меню выберитеNavigate → Test.

ВыберитеCreate New Test…, и вы увидите следующее окно:

Create tests in PyCharm

Оставьте значения по умолчаниюTarget directory,Test file name иTest class name. Выберите оба метода и щелкнитеOK. Вуаля! PyCharm автоматически создал файл с именемtest_calculator.py и создал для вас следующие тесты-заглушки:

 1 from unittest import TestCase
 2
 3 class TestCalculator(TestCase):
 4     def test_add(self):
 5         self.fail()
 6
 7     def test_multiply(self):
 8         self.fail()

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

  • НажмитеCtrl[.kbd .key-r]#R## on Mac or [.keys]#[.kbd .key-shift]##Shift##[.kbd .key-f10]#F10 # в Windows или Linux.

  • Щелкните фон правой кнопкой мыши и выберитеRun ‘Unittests for test_calculator.py’.

  • Щелкните маленькую зеленую стрелку слева от имени тестового класса и выберитеRun ‘Unittests for test_calculator.py’.

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

Failed tests in PyCharm

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

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

 1 from unittest import TestCase
 2
 3 from calculator import Calculator
 4
 5 class TestCalculator(TestCase):
 6     def test_add(self):
 7         self.calculator = Calculator()
 8         self.assertEqual(self.calculator.add(3, 4), 7)
 9
10     def test_multiply(self):
11         self.fail()

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

Running tests in PyCharm

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

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

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

Чтобы изучить возможности PyCharm, ориентированные на проекты, вы будете использовать веб-фреймворк Alcazar, созданный для целей обучения. Чтобы продолжить, скопируйте репо локально:

Clone Repo:Click here to clone the repo you’ll use, чтобы изучить в этом руководстве функции PyCharm, ориентированные на проекты.

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

  • ЩелкнитеFile → Open в главном меню.

  • ЩелкнитеOpen наWelcome Screen, если вы там.

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

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

Если вам нужно настроить другойvirtualenv, откройтеPreferences на Mac, нажавCmd[.kbd .key-comma]#,## or _Settings_ on Windows or Linux by pressing [.keys]#[.kbd .key-control]##Ctrl##Alt+[.kbd .key-s]#S # и найдите разделProject: ProjectName. Откройте раскрывающийся список и выберитеProject Interpreter:

Project interpreter in PyCharm

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

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

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

  • Searching for a fragment in the current file: НажмитеCmd[.kbd .key-f]#F## on Mac or [.keys]#[.kbd .key-control]##Ctrl##[.kbd .key-f]#F # в Windows или Linux.

  • Searching for a fragment in the entire project: НажмитеCmd[.kbd .key-shift]##Shift##[.kbd .key-f]#F on Mac or [.keys] [.kbd .key-control] Ctrl[.kbd .key-shift]##Shift##[.kbd .key-f]#F в Windows или Linux.

  • Searching for a class: НажмитеCmd[.kbd .key-o]#O## on Mac or [.keys]#[.kbd .key-control]##Ctrl##[.kbd .key-n]#N # в Windows или Linux.

  • Searching for a file: НажмитеCmd[.kbd .key-shift]##Shift##[.kbd .key-o]#O on Mac or [.keys] [.kbd .key-control] Ctrl[.kbd .key-shift]##Shift##[.kbd .key-n]#N в Windows или Linux.

  • Searching all if you don’t know whether it’s a file, class, or a code fragment that you are looking for: Дважды нажмите[.kbd .key-shift]#Shift #.

Что касается навигации, следующие ярлыки могут сэкономить вам много времени:

  • Going to the declaration of a variable: Нажмите[.kbd .key-command]#Cmd on Mac or [.keys] [.kbd .key-control] #Ctrl в Windows или Linux и щелкните по переменной.

  • Finding usages of a class, a method, or any symbol: НажмитеAlt+[.kbd .key-f7]#F7 #.

  • Seeing your recent changes: НажмитеShift[.kbd .key-alt]##Alt##[.kbd .key-c]#C # или перейдите кView → Recent Changes в главном меню.

  • Seeing your recent files: НажмитеCmd[.kbd .key-e]#E## on Mac or [.keys]#[.kbd .key-control]##Ctrl##[.kbd .key-e]#E # в Windows или Linux или перейдите кView → Recent Files в главном меню.

  • Going backward and forward through your history of navigation after you jumped around: НажмитеCmd[.kbd .key-bracket-left]#[## / [.keys]#[.kbd .key-command]##Cmd##[.kbd .key-bracket-right]] on Mac or [.kbd .key-control]Ctrl[.kbd .key-alt]##Alt##[.kbd .key-arrow-left]#Left / [.keys]Ctrl [.kbd .key-alt] ## Alt ##Right # в Windows или Linux.

Подробнее см.official documentation.

Использование контроля версий в PyCharm

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

Note:Git используется в следующих примерах.

Настройка VCS

Чтобы включить интеграцию VCS. Перейдите кVCS → VCS Operations Popup… из меню вверху или нажмитеCtrl[.kbd .key-v]#V## on Mac or [.keys]#[.kbd .key-alt]##Alt##[.kbd .key-grave]` ## в Windows или Linux. ВыберитеEnable Version Control Integration…. Вы увидите следующее открытое окно:

Enable Version Control Integration in PyCharm

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

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

VCS operations in PyCharm

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

Фиксация и разрешение конфликтов

Это две особенности интеграции VCS в PyCharm, которые я лично использую и получаю огромное удовольствие! Допустим, вы завершили свою работу и хотите ее совершить. Перейдите кVCS → VCS Operations Popup… → Commit… или нажмитеCmd[.kbd .key-k]#K## on Mac or [.keys]#[.kbd .key-control]##Ctrl##[.kbd .key-k]#K # в Windows или Linux. Вы увидите следующее открытое окно:

Commit window in PyCharm

В этом окне вы можете сделать следующее:

  1. Выберите файлы для фиксации

  2. Напишите ваше сообщение

  3. Сделайте всевозможные проверки и очисткуbefore commit

  4. Увидеть разницу изменений

  5. Зафиксируйте и нажмите сразу, нажав стрелку справа от кнопкиCommit в правом нижнем углу и выбравCommit and Push…

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

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

Conflicts in PyCharm

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

Conflict resolving windown in PyCharm

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

Resolving Conflicts in PyCharm

В приведенном выше GIF для первой конфликтующей строки автор отклонил свои изменения и принял изменения своих товарищей по команде. И наоборот, автор принял свои собственные изменения и отклонил своих партнеров по команде для второй конфликтующей строки.

Вы можете сделать гораздо больше с интеграцией VCS в PyCharm. Подробнее см.this documentation.

Использование плагинов и внешних инструментов в PyCharm

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

  • Добавить поддержку для различных языков и структур

  • Повысьте свою производительность с помощью ярлыков, средств просмотра файлов и т. Д.

  • Помочь вам выучить новый язык программирования с помощью упражнений по кодированию

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

Material Theme UI изменяет внешний вид PyCharm на внешний вид Material Design:

Material Theme in PyCharm

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

Plugin Marketplace in PyCharm

Если вы не можете найти то, что вам нужно, можете дажеdevelop your own plugin.

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

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

Terminal in PyCharm

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

Flake8 tool in PyCharm

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

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

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

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

 1 CONSTANT_VAR = 1
 2
 3
 4
 5 def add(a, b):
 6     c = "hello"
 7     return a + b

Это намеренно нарушает некоторые правила Flake8. Щелкните правой кнопкой мыши фон этого файла. ВыберитеExternal Tools, а затемFlake8. Вуаля! Результат анализа Flake8 появится внизу:

Flake8 Output in PyCharm

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

Add shortcut in PyCharm

На изображении выше ярлык для этого инструментаCtrl[.kbd .key-alt]##Alt##[.kbd .key-a]#A #. Добавьте желаемый ярлык в текстовое поле и щелкнитеOK для обоих окон. Теперь вы можете использовать этот ярлык для анализа файла, над которым вы сейчас работаете с Flake8.

PyCharm Professional Особенности

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

Поддержка Django

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

  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 см. Вofficial documentation.

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

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

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

Визуализация параллелизма потоков

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

Посетитеthe comprehensive documentation of this feature для более подробной информации.

Profiler

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

Если у вас не установленыvmprof илиyappi, то он вернется к стандартномуcProfile. Этоwell-documented, поэтому я не буду его здесь повторять.

Научный режим

Python - это не только язык для общего и веб-программирования. Он также стал лучшим инструментом для науки о данных и машинного обучения за последние годы благодаря библиотекам и инструментам, таким какNumPy,SciPy,scikit-learn,Matplotlib,Jupyter. ) s и многое другое. При наличии таких мощных библиотек вам необходима мощная IDE для поддержки всех функций, таких как построение графиков и анализ этих библиотек. PyCharm предоставляет все необходимое в видеthoroughly documented here.

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

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

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

Заключение

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

В этой статье вы узнали о многом, в том числе:

  • Установка PyCharm

  • Написание кода в PyCharm

  • Выполнение вашего кода в PyCharm

  • Отладка и тестирование вашего кода в PyCharm

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

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

  • Использование контроля версий в PyCharm

  • Использование плагинов и внешних инструментов в PyCharm

  • Использование функций PyCharm Professional, таких как поддержка Django и научный режим

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

Clone Repo:Click here to clone the repo you’ll use, чтобы изучить в этом руководстве функции PyCharm, ориентированные на проекты.