Как закомментировать блок кода в Python [дублировать]
Вопрос
На этот вопрос уже есть ответ здесь:
Существует ли механизм для закомментирования больших блоков кода Python?
Прямо сейчас единственные способы, которые я вижу для комментирования кода, - это либо начинать каждую строку с #
, или заключить код в тройные кавычки: """
.
Проблема с ними заключается в том, что вставка #
перед тем, как каждая строка будет громоздкой и """
заставляет строку, которую я хочу использовать в качестве комментария, отображаться в сгенерированной документации.
После прочтения всех комментариев ответ, по-видимому, будет "Нет".
Решение
Python не имеет такого механизма.Добавьте a #
к каждой строке блокировать комментарий.Для получения дополнительной информации см. БОДРОСТЬ ДУХА 8.Большинство IDE Python поддерживают механизм, позволяющий автоматически блокировать комментарии с помощью знаков pound для вас.Например, в режиме ожидания на моей машине это Альт+3 и Альт+4.
Не используйте тройные кавычки; как вы обнаружили, это относится к строкам документации, а не к блокирующим комментариям, хотя и имеет аналогичный эффект.Если вы просто временно что-то комментируете, это вполне подойдет в качестве временной меры.
Другие советы
Единственное лекарство, которое я знаю от этого, - это хороший редактор.Извините.
Скройте тройные кавычки в контексте, который не будет ошибочно принят за строку документа, например:
'''
...statements...
''' and None
или:
if False: '''
...statements...
'''
Единственный способ, которым вы можете сделать это без тройных кавычек, - это добавить:
if False:
А затем сделайте отступ во всем вашем коде.Обратите внимание, что код по-прежнему должен иметь правильный синтаксис.
Многие IDE Python могут добавлять #
для вас в каждой выбранной строке, и удаляйте их также при отмене комментирования.Аналогично, если вы используете vi или Emacs ( Эмакс ) вы можете создать макрос, который сделает это за вас, для блока кода.
Комментарий M-x-регион, в Emacs ( Эмакс )' Режим Python.
В JetBrains PyCharm на Mac используется Команда + / прокомментировать / раскомментировать выбранный блок кода.В Windows используйте CTRL + /.
По крайней мере, в VIM вы можете выбрать первый столбец текста, который хотите вставить, используя визуальный режим блока (CTRL+V
в виртуальных машинах, отличных от Windows), а затем добавьте #
перед каждой строкой используйте эту последовательность:
I#<esc>
В блочном визуальном режиме I
переходит в режим вставки с наведением курсора перед блоком в его первой строке.Вставленный текст копируется перед каждый линия в блоке.
В vi:
- Перейдите к началу блока и пометьте его буквой а.
- Перейдите к нижней части блока и пометьте его буквой b
Тогда делай
:'a,'b s!^!#!
comm='''
Junk, or working code
that I need to comment.
'''
Вы можете заменить comm
с помощью переменной по вашему выбору, которая, возможно, короче, ее легко вводить касанием, и вы знаете, что она не встречается (и не будет) в ваших программах.Примеры: xxx
, oo
, null
, nil
.
Да, есть (в зависимости от вашего редактора).В ПыДев (и в Студия Aptana с PyDev):
Ctrl + 4 - прокомментировать выбранный блок
Ctrl + 5 - раскомментировать выбранный блок
В Visual Studio, используя Инструменты Python для Visual Studio, блоки могут быть закомментированы с помощью Ctrl+K, Ctrl+C и без комментариев с помощью Ctrl+K, Ctrl+U.
Я использую Блокнот++ на компьютере с Windows выберите свой код, введите CTRL-K
.Чтобы раскомментировать, вы выбираете код и нажимаете Ctrl + Сдвиг + K.
Кстати, Notepad ++ прекрасно работает как редактор Python.С автозаполнением, сворачиванием кода, подсветкой синтаксиса и многим другим.И это бесплатно, как в речи, так и в пиве!
Единственным механизмом для закомментирования кода Python (понимаемого как код, игнорируемый интерпретатором) является в #.
Как вы говорите, вы также можете использовать строковые литералы, которые не игнорируются интерпретатором, но могут быть совершенно неуместны для выполнения программы.
Тройные кавычки для меня в порядке вещей.Вы можете использовать "' foo "' для строк документации и """ bar """" для комментариев или наоборот, чтобы сделать код более читаемым.
Еще одно решение на основе редактора:текстовые "прямоугольники" в Emacs.
Выделите код, который вы хотите закомментировать, затем C-x-r-t #
Чтобы отменить комментирование кода:выделите, затем C-x-r-k
Я пользуюсь этим весь день, каждый день.(Назначается для горячих клавиш, конечно.)
Это и мощный поиск / замена регулярных выражений - причина, по которой я терпимо отношусь к другим "эксцентричностям" Emacs.
На Eric4 есть простой способ:выберите блок, введите Ctrl+M прокомментировать весь блок или Ctrl+альт+M чтобы раскомментировать.
Используйте хороший редактор, такой как Скит, выберите свой код, нажмите Ctrl + Q и готово.
Если у вас нет редактора, поддерживающего комментарии к блокам, вы можете использовать строку в тройных кавычках в начале и конце вашего блока кода, чтобы "эффективно" закомментировать его.Однако это не самая лучшая практика.