Комментируйте блок кода Python
Есть ли механизм для комментирования больших блоков кода Python?
В настоящее время единственными способами, которые я вижу в комментировании кода, является либо запуск каждой строки с помощью #
, либо включение кода в тройные кавычки: """
.
Проблема заключается в том, что вставка #
перед каждой строкой громоздка, а """
делает строку, которую я хочу использовать, как комментарий, отображаемый в сгенерированной документации.
После прочтения всех комментариев ответ кажется "Нет".
Ответы
Ответ 1
Python не имеет такого механизма. Подготовьте #
к каждой строке, чтобы заблокировать комментарий. Для получения дополнительной информации см. PEP 8. Большинство Python IDE поддерживают механизм автоматического распознавания блоков с комментариями с фунтами. Например, в IDLE на моей машине это Alt + 3 и Alt + 4.
Не используйте тройные кавычки, как вы обнаружили, это для строк документации, которые не блокируют комментарии, хотя и имеют аналогичный эффект. Если вы просто комментируете ситуацию временно, это нормально как временная мера.
Ответ 2
Единственное лекарство, которое я знаю для этого, - хороший редактор. Сожалею.
Ответ 3
Скрыть тройные кавычки в контексте, который не будет ошибочен для docstring, например:
'''
...statements...
''' and None
или
if False: '''
...statements...
'''
Ответ 4
Единственный способ сделать это без тройных кавычек - добавить:
if False:
И затем отступьте весь ваш код. Обратите внимание, что код по-прежнему должен иметь правильный синтаксис.
Многие IDE-объекты Python могут добавлять #
для вас на каждую выделенную строку и удалять их при некорректном комментировании. Аналогично, если вы используете vi или Emacs вы можете создать макрос, чтобы сделать это для вас для блока кода.
Ответ 5
M-x comment-region, Emacs 'Режим Python.
Ответ 6
По крайней мере, в VIM вы можете выбрать первый столбец текста, который вы хотите вставить, используя режим Block Visual (CTRL+V
в VN-образцах без окна), а затем перед каждой строкой, используя следующую последовательность, добавьте #
:
I#<esc>
В режиме Block Visual I
перемещается в режим вставки с курсором перед блоком на первой строке. Вставляемый текст копируется перед каждой строкой в блоке.
Ответ 7
В JetBrains PyCharm на Mac используйте Command + /, чтобы комментировать/раскомментировать выбранный блок кода. В Windows используйте CTRL + /.
Ответ 8
В vi:
- Перейдите к началу блока и отметьте его буквой a.
- Подойдите к нижней части блока и отметьте его буквой b
Тогда do
:'a,'b s!^!#!
Ответ 9
Да, есть (хорошо в зависимости от вашего редактора). В PyDev (и в Aptana Studio с PyDev)
Ответ 10
В Eclipse + PyDev, Компонирование блоков Python аналогично компиляции блоков Java Eclipse; выберите строки, которые вы хотите прокомментировать, и используйте Ctrl + / для комментариев. Чтобы раскомментировать комментарий, сделайте то же самое.
Ответ 11
Единственным механизмом для комментирования кода Python (понимаемого как код, проигнорированный интерпретатором) является #.
Как вы говорите, вы также можете использовать строковые литералы, которые не игнорируются интерпретатором, но могут быть совершенно неактуальны для программы выполнение.
Ответ 12
Я использую Notepad++ на компьютере с Windows, выберите свой код, введите CTRL-K
. Чтобы раскомментировать, вы выбираете код и нажимаете Ctrl + Shift + K.
Кстати, Notepad ++ прекрасно работает как редактор Python. С автозаполнением, сгибанием кода, подсветкой синтаксиса и т.д. И это бесплатно, как в речи, так и в пиве!
Ответ 13
В Visual Studio с помощью Python Tools для Visual Studio блоки можно прокомментировать Ctrl + K, Ctrl + C и раскомментирован Ctrl + K, Ctrl + U.
Ответ 14
В Eclipse с помощью PyDev, вы можете выбрать блок кода и нажать Ctrl + #.
Ответ 15
comm='''
Junk, or working code
that I need to comment.
'''
Вы можете заменить comm
на переменную по вашему выбору, которая, возможно, короче, проста в касании, и вы знаете, что это не происходит (и не будет) в ваших программах. Примеры: xxx
, oo
, null
, nil
.
Ответ 16
В Eric4 есть простой способ: выберите блок, введите Ctrl + M, чтобы прокомментировать весь блок или Ctrl + alt + M, чтобы раскомментировать.
Ответ 17
Другое редакторское решение: текст "прямоугольники" в Emacs.
Выделите код, который вы хотите прокомментировать, затем C-x-r-t #
Чтобы не комментировать код: выделить, затем C-x-r-k
Я использую это весь день, каждый день. (Разумеется, назначено горячим клавишам.)
Этот и мощный поиск/замена регулярных выражений является причиной того, что я переношу другие "эксцентриситеты" Emacs.
Ответ 18
Используйте хороший редактор, например SciTe, выберите свой код, нажмите Ctrl + Q и сделайте.
Если у вас нет редактора, который поддерживает комментарии блоков, вы можете использовать тройную кавычку в начале и конце кода, чтобы "эффективно" прокомментировать это. Однако это не лучшая практика.
Ответ 19
Тройные кавычки подходят ко мне.
Вы можете использовать '' 'foo' '' для docstrings и "" bar "" " для комментариев или наоборот, чтобы сделать код более удобочитаемым.