5

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

9

Проблема: Отсутствие механизма для комментирования больших блоков кода в Python

Сейчас, на мой взгляд, единственные способы комментирования кода в Python — это либо начинать каждую строку с символа #, либо заключать код в тройные кавычки: """.

Проблемы с этими подходами следующие: вставка символа # перед каждой строкой является утомительной, а использование тройных кавычек приводит к тому, что строка, которую я хочу использовать в качестве комментария, появляется в сгенерированной документации.

После прочтения всех комментариев, похоже, ответ на вопрос — «Нет».

Существует ли более удобный механизм для комментирования больших блоков кода в Python?

5 ответ(ов)

1

Чтобы скрыть тройные кавычки в коде, чтобы их не восприняли как докстринги, вы можете использовать несколько хитростей. Один из способов — это обернуть тройные кавычки в неисполняемый контекст, такой как условие if False, или разместить их после инструкций, которые не имеют отношения к основному коду. Вот несколько примеров:

  1. Использование условия if False:
if False: 
    '''
    ...ваши инструкции...
    '''

В этом примере блок с тройными кавычками никогда не будет выполнен, и Python не воспримет его как докстринг.

  1. Скрытие после инструкции, возвращающей None:
def example():
    # Никаких избыточных инструкций
    return None

'''
...ваши инструкции...
'''

Такой подход также позволяет избежать недоразумений. Просто помните, что это всего лишь трюк, и код все равно будет работать корректно.

0

Единственное средство, которое я знаю для этого — хороший редактор. Извините.

0

В JetBrains PyCharm на Mac для комментирования/раскомментирования выделенного блока кода используйте сочетание клавиш ⌘ + /. На Windows аналогичная команда выполняется с помощью Ctrl + /.

0

В VIM вы действительно можете выбрать первый столбец текста, который хотите вставить, используя блочный визуальный режим (на VIM для не-Windows это CTRL+V). Затем вы можете добавить символ # перед каждой строкой, используя следующую последовательность:

I#<esc>

В блочном визуальном режиме нажатие I переводит вас в режим вставки с курсором перед блоком на первой строке. Вставленный текст будет добавлен перед каждой строкой в выбранном блоке.

0

Чтобы упростить код и избежать проблем с использованием переменной comm, можно заменить её на более короткую и удобную для ввода переменную, например xxx. Вот как это может выглядеть:

xxx = '''
Мусор или рабочий код,
который мне нужно прокомментировать.
'''

Такое изменение сделает код более читаемым и не повлияет на его функционирование.

Чтобы ответить на вопрос, пожалуйста, войдите или зарегистрируйтесь