автоматическое форматирование кода pycharm

Русские Блоги

PyCharm автоматического форматирования кода Python

AutopepEP8 является инструментом, который использует Python кода автоматической версии стиля PEP8. Вы можете использовать AutoPEP8 непосредственно в PyCharm.

1. Введение в Autopep8

Мы должны понимать, прежде чем использовать AutoPep8PEP 8 – Style Guide for Python Code

Во-вторых, установить и использовать AutoPEP8

AutoPEP8 является открытым исходным кодом команды средство командной строки, которая автоматически форматирует код Python в стиле PEP8. AutoPEP8 использует инструмент Pycodestyle, чтобы определить, какую часть потребностей коды для форматирования, который фиксирует типографские проблемы, сообщенные в большинстве инструментов Pycodestyle. Сам AutoPep8 также инструмент, написанный на языке Python, поэтому мы можем использовать PIP для установки непосредственно:

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

Есть три проблемы в этом коде:

Далее, мы проверим этот код, используя PycodesTyple, а затем форматировать код в код типа PEP 8, используя AutoPep8.

Используйте код проверки Pycodestyle обнаружить, что есть три места в коде, которые не соответствуют спецификациям PEP 8, как показано ниже:

Используйте формат autopep8 для преобразования кода Python. В этом примере, AutoPep8 успешно помогла нам решить все вопросы следующим образом:

Если вы посмотрите на исходный файл в это время, он будет найден такой же, как и она не фиксирована к коду, который соответствует спецификации PEP 8. Как упоминалось ранее, не указать опцию в-месте, только выводит результат в командной строке. Если мы используем опцию в-место, то не будет никакого вывода, и AutoPep8 будет напрямую модифицировать исходный файл.

В-третьих, PyCharm Установить AutoPEP8

PyCharm Установка AutoPEP8

PIP Установка autopephot 8: Пип Установить Autopep8

Name: autopep8
Tools settings:

Источник

Русские Блоги

Конфигурация Pycharm autopep8: автоматическая настройка кода в стиле PEP8

О ПКП 8

PEP 8,Style Guide for Код Python, да Python официально запустил соглашения о кодировании, главным образом для обеспечения согласованности и улучшения стиля кодирования Python Читаемость кода.

Об Авто pep8

Auto pep8 автоматически Python код Отформатирован как инструмент, соответствующий стилю PEP 8. Он использует инструмент pycodestyle, чтобы определить Какие части кода должны быть Форматирование. автоматический pep8 может исправить большинство проблем с форматом, обнаруженных pycodestyle.

Загрузите и установите Autopep8

Использовать Autopep8

Командная строка используется следующим образом

Pycharm настроить метод Autopep8

автоматическое форматирование кода pycharm. 0c750d1c2bde6243b905720e7c496d30. автоматическое форматирование кода pycharm фото. автоматическое форматирование кода pycharm-0c750d1c2bde6243b905720e7c496d30. картинка автоматическое форматирование кода pycharm. картинка 0c750d1c2bde6243b905720e7c496d30. AutopepEP8 является инструментом, который использует Python кода автоматической версии стиля PEP8. Вы можете использовать AutoPEP8 непосредственно в PyCharm.

2) Заполните следующие элементы конфигурации и нажмите «ОК», чтобы сохранить

автоматическое форматирование кода pycharm. be868789a09261140cd59010eaf258d1. автоматическое форматирование кода pycharm фото. автоматическое форматирование кода pycharm-be868789a09261140cd59010eaf258d1. картинка автоматическое форматирование кода pycharm. картинка be868789a09261140cd59010eaf258d1. AutopepEP8 является инструментом, который использует Python кода автоматической версии стиля PEP8. Вы можете использовать AutoPEP8 непосредственно в PyCharm.

автоматическое форматирование кода pycharm. cad729bf827f1440250d0353754c9bb1. автоматическое форматирование кода pycharm фото. автоматическое форматирование кода pycharm-cad729bf827f1440250d0353754c9bb1. картинка автоматическое форматирование кода pycharm. картинка cad729bf827f1440250d0353754c9bb1. AutopepEP8 является инструментом, который использует Python кода автоматической версии стиля PEP8. Вы можете использовать AutoPEP8 непосредственно в PyCharm.

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

3) Используйте autopep8 для автоматического форматирования вашего кода Python

автоматическое форматирование кода pycharm. 7991563746ff913750feda479ecd56db. автоматическое форматирование кода pycharm фото. автоматическое форматирование кода pycharm-7991563746ff913750feda479ecd56db. картинка автоматическое форматирование кода pycharm. картинка 7991563746ff913750feda479ecd56db. AutopepEP8 является инструментом, который использует Python кода автоматической версии стиля PEP8. Вы можете использовать AutoPEP8 непосредственно в PyCharm.

Первый способ:

автоматическое форматирование кода pycharm. b09fd5f93e0709a5e891af34d1a207ff. автоматическое форматирование кода pycharm фото. автоматическое форматирование кода pycharm-b09fd5f93e0709a5e891af34d1a207ff. картинка автоматическое форматирование кода pycharm. картинка b09fd5f93e0709a5e891af34d1a207ff. AutopepEP8 является инструментом, который использует Python кода автоматической версии стиля PEP8. Вы можете использовать AutoPEP8 непосредственно в PyCharm.

Второй способ:

автоматическое форматирование кода pycharm. 672828b3999c591c102aebf37a1ffc79. автоматическое форматирование кода pycharm фото. автоматическое форматирование кода pycharm-672828b3999c591c102aebf37a1ffc79. картинка автоматическое форматирование кода pycharm. картинка 672828b3999c591c102aebf37a1ffc79. AutopepEP8 является инструментом, который использует Python кода автоматической версии стиля PEP8. Вы можете использовать AutoPEP8 непосредственно в PyCharm.

Отображать после форматирования

автоматическое форматирование кода pycharm. f2363af2538d01e6a39f27673625caed. автоматическое форматирование кода pycharm фото. автоматическое форматирование кода pycharm-f2363af2538d01e6a39f27673625caed. картинка автоматическое форматирование кода pycharm. картинка f2363af2538d01e6a39f27673625caed. AutopepEP8 является инструментом, который использует Python кода автоматической версии стиля PEP8. Вы можете использовать AutoPEP8 непосредственно в PyCharm.

Используется в командной строке следующим образом:

Источник

Шпаргалка: Горячие (hotkeys) клавиши PhpStorm и PyCharm

автоматическое форматирование кода pycharm. hotkeys. автоматическое форматирование кода pycharm фото. автоматическое форматирование кода pycharm-hotkeys. картинка автоматическое форматирование кода pycharm. картинка hotkeys. AutopepEP8 является инструментом, который использует Python кода автоматической версии стиля PEP8. Вы можете использовать AutoPEP8 непосредственно в PyCharm.

Горячих клавиш в IDE PhpStorm и PyCharm гораздо больше, чем в приведенном ниже списке. Здесь я привел только те, которыми пользуюсь сам (* звездочкой выделил наиболее используемые мною горячие клавиши).

Шпаргалка будет обновляться, если начну использовать новые hotkeys.

Для настройки горячих клавиш или добавление собственных сочетаний клавиш перейдите File > Settings > Keymap.

Редактирование

*Ctrl + W — выделение текущего блока. Если нажимать W несколько раз, то будут выделяться родительские блоки по иерархии.

Ctrl + Shift + W — проделывает обратное действие от предыдущего

Ctrl + Y — удаляет строку

*Ctrl + D — дублирует строку

Ctrl + Shift + U — делает выделенный текст или заглавными, или строчными буквами

Ctrl + Delete — удаляет часть от курсора до конца слова

*Ctrl + Alt + L — форматирование кода соответствии с настройками code style.

*Ctrl + / — закомментировать/раскомментировать текущую строку.

Ctrl + Shift + / — закомментировать/раскомментировать выделенные строки кода.

Ctrl + Shift + J — к текущей строке присоединяет нижнюю.

Ctrl + [ или ] — перемещает курсор в начало или конец блока с кодом, в теле фукции, в теле цикла и т.д.

Ctrl + Shift + ] или [ — выделить код код до конца или до начала блока

*Tab — сделать отступ (табуляцию)

*SHIFT + Tab — убрать отступ

*Ctrl + Alt + Стрелка вверх — перемещает текущую строку вверх.

*Ctrl + Alt + Стрелка вниз — перемещает текущую строку вниз.

Ctrl + Shift + Стрелка вниз — перемещает текущий логический блок вниз

*Ctrl + Space — выводит возможные варианты автодополнения

Ctrl + курсор мыши над кодом — краткая информация

*Ctrl + клик по названию переменной или метода, или CTRL+B когда курсор установлен на названии, приведет туда, где метод или переменная определены.

*Ctrl + G — перейти к строке по номеру

*Alt + Клик левой кнопкой мышки — мультикурсор, если нужно одновременно несколько курсоров, кликаем мышкой в нужные места, куда нужно их добавить

*Ctrl + Alt + J — обрамление выделенного текста тегом (нужно выбрать первый пункт из всплывающего окошка)

F11 — быстро установить закладку

Shift + F11 — просмотр всех закладок

Поиск / замена

Двойной Shift — поиск по проекту

*Ctrl + F — поиск в текущем файле

*Ctrl + R — поиск и замена

*Ctrl+Shift+E — вызовет всплывающее окно, в котором показаны последние куски кода в разных файлах, с которыми вы работали

Ctrl + Shift + F — поиск в группе файлов (например в проекте или папке)

Ctrl + Shift + R — поиск и замена в группе файлов

Ctrl + N — найти в каком файле находится класс

*Ctrl + Shift + N — поиск файла по названию

Разное

Ctrl + Alt + S — быстрый доступ к настройкам

*Shift + F6 — переименование файла (выделите в блоке с файлами проекта нужный файл).

Источник

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

Введение

Python, точнее его самый известный представитель CPython, не очень предназначен для каких-либо быстрых расчетов. Иначе говоря, производительность у него не такая уж хорошая. А вот скорость разработки и читаемости отличная.

О читаемости и пойдет речь, а точнее как ее увеличить.

Проблемы форматирования

Идеального форматирования кода не существует. Для каждого языка стоит подстраиваться под общепринятые правила оформления кода. Да что говорить, если среди новичков С++ еще до сих пор войны по поводу ставить скобки на следующей строке или нет.
Для python’а основными проблемами форматирования является «C стиль». Не редко в рассматриваемый язык приходят из С-подобных языков, а для них свойственно писать с символами «)(;».
Символы не единственная проблема, есть еще и проблема избыточности написания конструкций. Питон, в отличие от Java, менее многословен и чтобы к этому привыкнуть у новичков уходит большое количество времени.
Это две основные проблемы, которые встречаются чаще всего.

Стандарты и рекомендации к оформлению

Если для повышения скорости исполнения кода можно использовать разные подходы, хотя эти подходы очень индивидуальны, то для форматирования текста существует прям slyle guide — это pep8. Далее его буду называть «стандарт».
Почитать про стандарт можно здесь, на русском языке можно здесь
Pep8 весьма обширный и позволяет программисту писать РЕАЛЬНО читаемый код.

Автоматизируем форматирование

Если посмотреть сколько всяких правил в pep8, то можно сесть за рефакторинг надолго. Вот только это лениво, да и при написании нового кода сиравно будут какие-то ошибки правил. Для этого рассмотрим как же себе можно упростить жизнь.

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

По нему можно однозначно понять: где ошибка и что случилось.

autopep8

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

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

autoflake

Тем самым будут рекурсивно почищены файлы в директории.

unify

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

Как и везде, утилита выполнит свое грязное дело рекурсивно для файлов в папке.

docformatter

Все время говорим о самом коде, а о комментариях еще ни разу не шло речи. Настало время — docformatter. Эта утилита помогает привести ваши docstring по соглашению PEP 257. Соглашение предписывает как следует оформлять документацию.
Использование утилиты ничуть не сложнее предыдущих:

А все вместе можно?

Выше описаны утилиты, их запуск можно добавить какой-нибудь bash скрипт под магическим названием clean.bash и запускать. А можно пойти и по другому пути и использовать wrapper над этими утилитами — pyformat

Выводы

Python-код легко читается, однако, есть способы сделать лапшу и из читаемого кода.
В данной статье были озвучены некоторые проблемы оформления кода, а также способы поиска этих проблем. Были рассмотрены несколько утилит, которые позволяют в автоматическом режиме убрать некоторые изъяны оформления кода.
Стоит озвучить вслух следующую рекомендацию при написании кода, которая универсальна для любого языка: более важным правилом оформлением, чем подобные pep8-документы — это постоянство стиля. Выбрали в каком стиле будете писать программу, в этом же и пишите весь код.

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

Источник

О некоторых горячих клавишах в PyCharm

Хочу поделиться с вами горячими клавишами, которыми пользуюсь или к которым пытаюсь привыкнуть в своей повседневной работе. В современных средах их количество может просто зашкаливать, но постепенное добавление новых сочетаний в копилку, способно значительно повысить вашу продуктивноть. Приведенные сочетания относятся к редактированию, навигации, рефакторингу и справедливы только для раскладки Default for XWin (Linux).

Ctrl+Alt+Left/Ctrl+Alt+Right
На одном из лидирующих позиций (в моем рейтинге) находится перемещение назад и вперед. Если кто-то пользовался emacs, то функционал напоминает marks and mark ring. При определенных командах перемещения по файлу в историю добавляются новые позиций, по которым и происходит перемещение.

Ctrl+Shift+Backspace
Перемещение к месту последней правки. В принципе, это частный случай предыдущей команды, но тем не менее полезный.

Ctrl+B
Многим известное перемещение к реализации.

Двойное нажатие Shift
Поиск по индексу, который включает в себя имена файлов, имена классов, их атрубиты и т.д. Также есть отдельные команды:
Ctrl+N — для классов, Ctrl+Shift+N — для файлов и Ctrl+Alt+Shift+N — для символов (функций, атрибутов классов).

Ctrl+Shit+8
Именованые метки для быстрого перемещения по «горячим» местам. Перемещение к метке — Ctrl+3.
Удаление метки — повторное нажатие Ctrl+Shift+4.

автоматическое форматирование кода pycharm. image loader. автоматическое форматирование кода pycharm фото. автоматическое форматирование кода pycharm-image loader. картинка автоматическое форматирование кода pycharm. картинка image loader. AutopepEP8 является инструментом, который использует Python кода автоматической версии стиля PEP8. Вы можете использовать AutoPEP8 непосредственно в PyCharm.

Ctrl+W
Выделение кода с учетом синтаксиса. Очень полезная фича.

автоматическое форматирование кода pycharm. image loader. автоматическое форматирование кода pycharm фото. автоматическое форматирование кода pycharm-image loader. картинка автоматическое форматирование кода pycharm. картинка image loader. AutopepEP8 является инструментом, который использует Python кода автоматической версии стиля PEP8. Вы можете использовать AutoPEP8 непосредственно в PyCharm.

Alt+Shift+Down/Alt+Shift+Up
Перемещение строки, на которой установлен курсор вверх или вниз. Есть аналогичная команда, но только для целых
statements — Ctrl+Shift+Down/Ctrl+Shift+Down.

Ctrl+Y
Удаление всей строки. Кстати, команда копирования Ctrl+C без выделения также работает для всей строки.

Ctrl+D
Продублировать текущую строку.

Ctrl+Alt+V
Вынесение выделенного выражения в переменную. Замечательно работает в сочетании с Ctrl+W. Также есть обратная команда для вставки выражения inline — Ctrl+Alt+N.

автоматическое форматирование кода pycharm. image loader. автоматическое форматирование кода pycharm фото. автоматическое форматирование кода pycharm-image loader. картинка автоматическое форматирование кода pycharm. картинка image loader. AutopepEP8 является инструментом, который использует Python кода автоматической версии стиля PEP8. Вы можете использовать AutoPEP8 непосредственно в PyCharm.

Ctrl+Shift+Delete
Вынести внутренние statements из внешнего блока (if, for, try). Обратите внимание на то, что происходит с except или else блоками. Также есть обратная команда для «обертывания» кода в блок — Ctrl+Alt+T.

автоматическое форматирование кода pycharm. image loader. автоматическое форматирование кода pycharm фото. автоматическое форматирование кода pycharm-image loader. картинка автоматическое форматирование кода pycharm. картинка image loader. AutopepEP8 является инструментом, который использует Python кода автоматической версии стиля PEP8. Вы можете использовать AutoPEP8 непосредственно в PyCharm.

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

автоматическое форматирование кода pycharm. image loader. автоматическое форматирование кода pycharm фото. автоматическое форматирование кода pycharm-image loader. картинка автоматическое форматирование кода pycharm. картинка image loader. AutopepEP8 является инструментом, который использует Python кода автоматической версии стиля PEP8. Вы можете использовать AutoPEP8 непосредственно в PyCharm.

В дополнение хочу посоветовать замечательный инстумент Productivity Guide, который подсчитывает сколько раз вы использовали ту или иную фичу (неиспользуемые там также перечислены). Располагается это в Help->Productivity Guide.

На этом все. Оставляйте в комментариях горячие клавиши, которыми пользуетесь вы. Продуктивного кодинга!

Источник

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *