14

Как создать многострочные комментарии в Python?

11

Как сделать многострочные комментарии в языке программирования? Большинство языков имеют специальные символы для блочных комментариев, например:

/*

*/

Я хочу узнать, как правильно использовать многострочные комментарии в своем коде.

5 ответ(ов)

0

Это просто не так. В отличие от комментариев, строки в тройных кавычках все равно разбираются и должны быть синтаксически корректными, независимо от места их расположения в исходном коде.

Если вы попробуете выполнить следующий код:

def parse_token(token):
    """
    Эта функция разбирает токен.
    TODO: написать адекватный docstring :-)
    """

    if token == '\\and':
        do_something()

    elif token == '\\or':
        do_something_else()

    elif token == '\\xor':
        '''
        Обратите внимание, что нам все еще нужно обеспечить поддержку устаревшего
        токена \xor. Надеюсь, мы сможем отказаться от этой поддержки в libfoo 2.0.
        '''
        do_a_different_thing()

    else:
        raise ValueError

Вы получите либо...

ValueError: invalid \x escape

...в Python 2.x, либо...

SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 79-80: truncated \xXX escape

...в Python 3.x.

Единственный способ сделать многострочные комментарии, которые будут проигнорированы парсером, это использовать #:

elif token == '\\xor':
    # Обратите внимание, что нам все еще нужно обеспечить поддержку устаревшего
    # токена \xor. Надеюсь, мы сможем отказаться от этой поддержки в libfoo 2.0.
    do_a_different_thing()
0

В Python 2.7 многострочный комментарий можно сделать с помощью тройных кавычек:

"""
Это многострочный
комментарий
"""

Если вы находитесь внутри класса, не забудьте правильно отформатировать отступы.

Например:

class Weather2():
    """
    def getStatus_code(self, url):
        world.url = url
        result = requests.get(url)
        return result.status_code
    """

Учтите, что на самом деле это не полноценный комментарий, а строка документации (docstring), и она может быть использована для описания класса или его методов. Если вы хотите оставить комментарий, который не будет восприниматься как строка документации, лучше использовать символы # для однострочных комментариев или оставить """ """, но следите за тем, чтобы не использовать их в коде, где требуется выполнение.

0

Я думаю, что нет, за исключением того, что многострочные строки не обрабатываются. Однако большинство, если не все, IDE для Python имеют сочетание клавиш для «комментирования» нескольких строк кода.

0

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

Вот пример:

test1 = [1, 2, 3, 4,]       # test1 содержит 4 целых числа

test2 = [1, 2, '''3, 4,'''] # test2 содержит 2 целых числа **и строку** '3, 4,'
0

Вы можете попробовать следующее (при выполнении quoted, ввод для первого вопроса должен быть заключен в '):

"""
print("Как тебя зовут? ")
myName = input()
print("Приятно познакомиться, " + myName)
print("Количество символов равно ")
print(len(myName))
age = input("Сколько вам лет? ")
print("В следующем году вам будет " + str(int(age) + 1) + ".")

"""
a = input()
print(a)
print(a * 5)

Все, что заключено между """, будет закомментировано.

Если вы ищете однострочные комментарии, то используйте #.

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