как закомментировать кусок кода python
Использование комментариев в Python
В этом руководстве мы обсудим что такое комментарии, зачем они нужны и как правильно записывать многострочные и однострочные комментарии в языке программирования Python.
Введение
По мере того, как ваши программы становятся все длиннее и сложнее, следует добавлять в код заметки, поясняющие подход, используемый вами для решения поставленной задачи.
Комментарии позволяют писать заметки и пояснять код прямо внутри программы.
Комментарии используются там, где код недостаточно понятен сам по себе. По сути, это операторы или строки, игнорируемые интерпретаторами Python.
Снабжая программу комментариями, вы делаете код более читабельным для людей, поскольку это в удобной форме поясняет назначение того или иного блока или строчки кода.
В зависимости от назначения программы, комментарии могут выполнять роль личных заметок или списков задач, которые еще предстоит выполнить, либо их можно писать для других программистов, чтобы тем было проще понять, как работает ваш код.
Как правило, лучше всего писать комментарии по ходу дела, пока вы пишете или обновляете программу – если вернуться к их написанию позже, вы можете уже не вспомнить ход своих мыслей в тот момент, и в долгосрочной перспективе такие комментарии могут оказаться менее полезными.
Создание комментария
Чтобы написать комментарий, начните строку с символа #. Python проигнорирует все, что будет написано после него. Как правило, комментарии выглядят примерно так:
Комментарии также можно размещать в конце строки:
Многострочные комментарии
В Python нет отдельного синтаксиса для многострочных комментариев. Однако, равноценного результата можно добиться, используя многострочную строку:
Если строка не привязана к какой-либо переменной, Python прочитает ее как код, но в итоге проигнорирует.
Пример использования
Иногда программисты, работающие с Python, ставят символ # перед строчкой кода, чтобы временно удалить ее из программы на время проверки. Этот прием называется «закомментировать код» и пригождается в тех случаях, когда вы пытаетесь выяснить, почему программа не работает. Закончив проверки, вы можете быстро вернуть код обратно, просто удалив поставленный перед строчкой символ #.
Заключение
Писать комментарии в коде Python – очень полезная привычка, и даже если на данный момент вы не видите в этом необходимости, то поверьте: пояснения к работе различных участков кода могут понадобиться как программистам, его читающим, так и лично вам, если вы вернетесь к работе над программой после долгого перерыва.
Это особенно полезно в том случае, если ваш код является открытым или выложен на GitHub, где другие программисты пытаются его дополнить. Подробно ознакомив их с тем, что вы уже успели сделать, вы поможете им быстрее освоиться и начать работу.
Комментарии в Python
К омментарии – это пояснения к исходному тексту программы. Это может быть описание работы какого-то класса, функции или, например, значение переменной.
Чтобы ваш код был легко читаемым другими людьми, нужно придумывать очевидные имена, правильно подбирать названия функциям и правильно организовывать свой код.
Комментарии – это еще один способ сделать ваш код более читабельным. Они могут помочь не только другим людям читать и понимать ваш код, но и вам самим. Бывают ситуации, когда вы быстро пишете какой-то код, не комментируя ни строчки.
Разработчики часто забывают, как работает их собственный код. Особенно если он был написан давно
Комментарии – это отличный способ быстро вспомнить свой код, написанный ранее.
Хороший комментарии должны быть:
О том, как правильно писать комментарии, отлично написано в книге Роберта Мартина » Чистый код «, в главе 4 «Комментарии».
PEP 8 рекомендует использовать максимум 72 символа для комментариев на одной строке. Если ваш комментарий выходит за рамки 72 символов, его рекомендуется разделить на несколько строк.
О том, как создавать однострочные и многострочные комментарии в Python, разберем ниже.
Однострочные комментарии
Чтобы написать однострочный комментарий в Python, достаточно поставить » # » перед комментарием:
# Это однострочный комментарий print(«python») # Это тоже однострочный комментарий
Python будет считать комментарием все, что находится после «#» и до конца строки.
Многострочные комментарии
Во многих языках программирования (например С++, Go, Java, JavaScript) можно создавать многострочные комментарии конструкцией вида /* */ В Python нет возможности создавать многострочные комментарии, и такая конструкция не сработает. Однако есть альтернативные решения.
Вариант #1 – писать однострочные комментарии друг за другом:
def multiline_comment_example(): # Это многострочный комментарий, оформленный # в виде однострочных комментариев, следующих # друг за другом
Вариант #2 – заключить комментарий в тройные кавычки:
«»» Это многострочный комментарий, созданный с помощью тройных кавычек «»»
Второй вариант более удобен, но есть несколько нюансов, о которых нужно помнить.
Многострочные комментарии, размещенные в определенных частях кода (например в самом начале модуля или сразу после объявления функции) могут служить документацией.
Шорткаты для комментариев
Процесс комментирования строк можно ускорить, используя шорткаты.
Несколько курсоров
Сразу несколько комментариев можно написать выбрав сразу несколько строк. Для разных редакторов они разные: Crtl + Left mouse click или Alt + Left mouse click ( Cmd + Left mouse click для Mac OS)
Свернуть комментарий
В некоторых редакторах (например PyCharm) можно свернуть комментарий, если он стал занимать слишком много места на экране.
Быстрое комментирование строк кода
Часто бывают ситуации, когда нужно закомментировать фрагмент кода (1 строку или сразу несколько строк подряд). Для этого просто выберите нужный фрагмент кода и нажмите Ctrl + / ( Cmd + / для Mac OS)
Научиться писать полезные комментарии не так просто, как кажется на первый взгляд. Но это умение определенно облегчит жизнь не только другим разработчикам, которые будут разбирать логику вашей программы, но и вам самим.
№28 Как писать комментарии / для начинающих
Добавление комментариев считается хорошей практикой. Это неисполняемые, но все равно важные части кода. Они не только помогают программистам, работающим над одним и тем же проектом, но также тестировщикам, которые могут обращаться к ним для ясности при тестировании белого ящика.
Куда лучше добавлять комментарии при создании или обновлении программы, иначе можно утратить контекст. Комментарии, добавленные позже, могут быть далеко не настолько эффективными.
Комментарии — это способ выражения того, что делает программа на самом высоком уровне. Это отмеченные строчки, которые комментируют код. В Python они бывают двух типов: одно- и многострочные.
Однострочные комментарии в Python
Такой тип комментариев нужен для написания простых, быстрых комментариев во время отладки. Такие комментарии начинаются с символа решетки # и автоматически заканчиваются символом окончания строки (EOL).
При добавлении комментария важно убедиться, что у него тот же уровень отступа, что и у кода под ним. Например, нужно оставить комментарий к строке объявления функции, у которой нет отступа. Однако они имеются у блоков кода внутри нее. Поэтому учитывайте выравнивание при комментировании внутренних блоков кода.
Многострочные комментарии в Python
Python позволяет писать комментарии на нескольких строках. Они называются многострочными или блочными. Такой тип комментирования подходит для описания чего-то более сложного.
Этот тип комментариев нужен для описания всего последующего кода. Дальше примеры многострочных комментариев в Python.
С помощью символа #
Для добавления многострочного комментария нужно начинать каждую строку с символа решетки и одного пробела. Такой комментарий можно разбить на абзацы. Для этого достаточно добавлять пустые строки с символом перед каждым из них.
Примечание: в оригинале этот символ (#) называется octothorpe, что переводится с латинского как «восемь концов». Термин придумала группа инженеров в Bell Labs, которая работала над проектом первой сенсорной клавиатуры.
Docstring в Python
В Python есть такая особенность, как задокументированные строки (docstring). С их помощью программисты могут быстро добавлять комментарии для каждого модуля, функции, метода или класса в Python.
Задать docstring можно с помощью строковой константы. Она обязана быть первой инструкцией в определении объекта.
У docstring более широкая область применения, чем у комментария. Она должна описывать, что делает функция, а не как. Хорошей практикой считается добавление таких строк в каждую функцию программы.
Как задать docstring в Python?
Задать docstring в Python можно с помощью тройных кавычек Нужно добавить один набор в начале и еще один – в конце. Docstring также могут занимать по несколько строк.
Примечание: строки с тремя кавычками также являются docstring в Python, пусть они и могут казаться обычными комментариями.
В чем отличие между комментарием и docstring?
Строки, начинающиеся с тройной кавычки, — это все еще обычные строки, которые могут быть написаны в несколько строк. Это значит, что они все еще являются исполняемыми инструкциями. Если же у них нет метки, значит сборщик мусора уничтожит их после исполнения.
Как закомментировать блок кода в Python [дубликат]
На этот вопрос уже есть ответ здесь:
Есть ли механизм для комментирования больших блоков кода Python?
Проблема с этим заключается в том, что вставка # перед каждой строкой является громоздкой и «»» заставляет строку, которую я хочу использовать в качестве комментария, отображаться в сгенерированной документации.
После прочтения всех комментариев ответ кажется «Нет».
15 ответов
Скрыть тройные кавычки в контексте, который не будет принят за строку документации, например:
В режиме визуального блока I перемещается в режим вставки с курсором перед блоком в его первой строке. Вставленный текст копируется перед каждой строкой в блоке.
Да, есть (в зависимости от вашего редактора). В PyDev (и в Aptana Studio с PyDev):
Кстати, Notepad ++ прекрасно работает как редактор Python. С автозаполнением, свертыванием кода, подсветкой синтаксиса и многим другим. И это бесплатно, как в речи, так и в пиве!
Как вы сказали, вы также можете использовать строковые литералы которые не игнорируются интерпретатором, но могут быть совершенно несущественными для выполнения программы.
Другое решение на основе редактора: текстовые «прямоугольники» в Emacs.
Выделите код, который вы хотите закомментировать, затем C-x-r-t #
Чтобы откомментировать код: выделите, затем C-x-r-k
Я пользуюсь этим целый день, каждый день. (Назначено на горячие клавиши, конечно.)
Тройные кавычки в порядке для меня. Вы можете использовать » ‘foo’ » для строк документации и «» «bar» «» для комментариев или наоборот, чтобы сделать код более читабельным.
Если у вас нет редактора, который поддерживает комментарии к блоку, вы можете использовать строку в тройных кавычках в начале и в конце блока кода, чтобы «эффективно» закомментировать его. Это не лучшая практика.
Python комментарии
Как и многие другие высокоуровневые языки программирования, Python позволяет оставлять комментарии в исходном коде программы. Комментарии бывают двух видов: однострочные и многострочные, в зависимости от количества занимаемых строк. Для создания пояснений к различным модулям, классам, функциям и методам можно применять конструкции docstring.
Что такое комментарии и зачем они нужны?
Комментариями принято называть текстовые пояснения, которые улучшают понимание кода и находятся непосредственно в самой программе. Благодаря специальному синтаксису, они выделяются на фоне инструкций, предназначенных для выполнения компьютером. Это дает возможность компилятору и интерпретатору игнорировать подобные текстовые вставки, во время обработки исходного кода программы.
Таким образом, комментарии представляют собой специальные текстовые строки, которые никоим образом не влияют на ход выполнения программы. При желании в них можно писать все что угодно, поскольку компилятор и интерпретатор не будут обращать на них внимание. Грамотное использование комментариев позволяет значительно улучшить понимание текста программы другими людьми во время работы над общим проектом. Кроме того, реализация подобных пояснений помогает их автору быстро разбираться в ранее написанном коде. Такая потребность часто возникает при необходимости улучшить или доработать программу.
Однострочные
В каждом отдельно взятом языке программирования используется собственный синтаксис однострочных комментариев. Зачастую в роли специального оператора, который сообщает компьютеру о том, что следующая строка является комментарием, задействуется двойной слеш (//). В Python эту функцию выполняет обычный символ решетки (#). Следующий код демонстрирует создание двух однострочных комментариев внутри самой программы.
Если запустить программу с этим кодом на выполнение, ничего не произойдет, поскольку, как уже было сказано ранее, комментарии полностью игнорируются компьютером. Писать пояснения можно не только на английском, но и на русском языке. Для русских комментариев в Python нужно подключить кодировку UTF-8 (Unicode Transformation Format, 8-bit). В противном случае, компилятор выдаст ошибку, не сумев правильно распознать символы кириллицы.
Комментарий может находиться в любой части программы, закрывая от компилятора не только целую строку, но и ее отдельную часть, идущую за символом решетки. Пояснение, расположенное следом за определенной командой, как правило, должно в максимально лаконичной форме передавать ее смысл. В следующем примере комментарии отображают точки старта и завершения программы, а также передают назначение функции print().
Создавая комментарии, необходимо принять во внимание тот факт, что символ решетки не задействуется по прямому назначению, если заключен в строковый литерал. В приведенном ниже фрагменте кода данный оператор является частью строки под названием string. Работая в IDE (Integrated Development Environment), можно увидеть, что комментарии автоматически выделяются курсивом и обладают особой подсветкой, облегчающей их распознавание.
После ввода символа решетки, весь дальнейший текст будет считаться комментарием, вне зависимости от того, какие ключевые слова или операторы используются за ним.
В приведенном выше фрагменте кода за инициализацией строк string следует однострочный комментарий. Таким образом, количество символов решетки может быть произвольным.
Многострочные
Большинство высокоуровневых языков программирования поддерживают многострочные комментарии, которые помогают более подробно описывать детали реализации сложных для понимания блоков кода. Общепринятым синтаксисом для данной конструкции является слеш со звездочкой в начале выделенного блока (/*) и те же самые символы в обратном порядке в конце комментария (*/). Однако Python не поддерживает подобную возможность, вместо нее предлагая использовать совокупность нескольких однострочных комментариев.
Программа, приведенная выше, содержит набор однострочных комментариев, при помощи которых формируется в Python блок закомментированных пояснений к коду. Для тех, кто работает в простом редакторе кода или блокноте, такой подход покажется очень неудобным, так как при помощи символов решетки нельзя одновременно выделить и закомментировать несколько строчек программы, запретив тем самым их выполнение. Вместо этого приходится все комментировать по отдельности.
Однако современные IDE и редакторы кода, такие как PyCharm или NetBeans способны не только отображать синтаксис языка, но также поддерживают множество горячих клавиш для более быстрого написания программ. С их помощью можно моментально закомментировать огромный блок кода, а также оперативно избавиться от символов решетки в начале каждой строки. Это существенно ускоряет работу программиста и улучшает удобство тестирования.
Docstring
Для создания документации к различным модулям, классам, функциям и методами в Python широко применяется такой инструмент как docstring. Согласно официальному соглашению PEP 8 (Python Enhancement Proposal), которое содержит в себе комплекс общепринятых норм по написанию кода, в Python docstring необходимо использовать в качестве поясняющей конструкции для всех создаваемых блоков кода. Такие примечания необходимо помещать сразу же после определения класса, метода, функции или модуля, заключая текст в тройные кавычки.
Данный пример демонстрирует работу функции greeting(), которая создает строку и выдает ее на экран. Здесь применяется конструкция docstring, сообщающая программисту основные сведения о вызываемом методе. В отличие от обычных комментариев, docstring, как правило, обрабатывается компилятором и помещается в полученный байт-код. Во время выполнения программы записанные ранее сведения можно вывести на экран с помощью метода __doc__.
В спецификации PEP 8 определены базовые рекомендации использования docstring. Согласно общепринятым нормам в комментариях к функциям Python, первая строка документации должна представлять собой лаконичную сводку о назначении объекта, начинаясь с прописной буквы и заканчиваясь точкой. Вторая строка обязана быть пустой, в то время как последующие абзацы могут содержать более подробное описание внутренних особенностей объекта, его характеристики, особенности вызова и сторонние эффекты.
Применение docstring в качестве комментария
Несмотря на отсутствие прямой возможности создавать в коде Python 3 многострочные комментарии, язык Python позволяет использовать инструмент docstring для их замены. Сделать это можно при помощи тройных кавычек, просто поместив в них нужный текст. Таким образом, создается многострочный литерал, который не принадлежит какому-либо объекту, а поэтому не играет никакой роли во время обработки программного кода компилятором. Следующий пример демонстрирует применение docstring в качестве многострочного примечания в коде.
Несмотря на простоту такого подхода, пользоваться им не рекомендуется, так как основным назначением docstring является документирование объектов.
Именно по этой причине всегда лучше пользоваться символами решетки, комментируя большие объемы кода с помощью горячих клавиш IDE.
Заключение
Комментарии в языке программирования Python используются для создания собственных пояснений к исходному коду программы. Это позволяет улучшить его понимание другими людьми в процессе командной работы над большими проектами. В языке предусмотрены только однострочные комментарии, однако при помощи текстовых блоков можно получить аналог многострочных комментариев. Для создания документации к отдельным функциям, методам, классам и модулям применяются конструкции docstring. Общепринятые правила документирования исходного кода подробно описаны в сборнике рекомендаций PEP 8.