Как закомментировать блок кода в Python [дублировать]

StackOverflow https://stackoverflow.com/questions/675442

  •  21-08-2019
  •  | 
  •  

Вопрос

На этот вопрос уже есть ответ здесь:

Существует ли механизм для закомментирования больших блоков кода 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.

В Затмение + ПыДев, Комментирование блоков Python аналогично комментированию блоков Eclipse Java;выберите строки, которые вы хотите прокомментировать, и используйте Ctrl + / чтобы прокомментировать.Чтобы раскомментировать прокомментированный блок, сделайте то же самое.

Я использую Блокнот++ на компьютере с Windows выберите свой код, введите CTRL-K.Чтобы раскомментировать, вы выбираете код и нажимаете Ctrl + Сдвиг + K.

Кстати, Notepad ++ прекрасно работает как редактор Python.С автозаполнением, сворачиванием кода, подсветкой синтаксиса и многим другим.И это бесплатно, как в речи, так и в пиве!

Единственным механизмом для закомментирования кода Python (понимаемого как код, игнорируемый интерпретатором) является в #.

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

В Затмение используя ПыДев, вы можете выбрать блок кода и нажать Ctrl + #.

Тройные кавычки для меня в порядке вещей.Вы можете использовать "' foo "' для строк документации и """ bar """" для комментариев или наоборот, чтобы сделать код более читаемым.

Еще одно решение на основе редактора:текстовые "прямоугольники" в Emacs.

Выделите код, который вы хотите закомментировать, затем C-x-r-t #

Чтобы отменить комментирование кода:выделите, затем C-x-r-k

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

Это и мощный поиск / замена регулярных выражений - причина, по которой я терпимо отношусь к другим "эксцентричностям" Emacs.

На Eric4 есть простой способ:выберите блок, введите Ctrl+M прокомментировать весь блок или Ctrl+альт+M чтобы раскомментировать.

Используйте хороший редактор, такой как Скит, выберите свой код, нажмите Ctrl + Q и готово.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top