Как создать многострочные комментарии в Python?
Как сделать многострочные комментарии в языке программирования? Большинство языков имеют специальные символы для блочных комментариев, например:
/*
*/
Я хочу узнать, как правильно использовать многострочные комментарии в своем коде.
5 ответ(ов)
Это просто не так. В отличие от комментариев, строки в тройных кавычках все равно разбираются и должны быть синтаксически корректными, независимо от места их расположения в исходном коде.
Если вы попробуете выполнить следующий код:
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()
В Python 2.7 многострочный комментарий можно сделать с помощью тройных кавычек:
"""
Это многострочный
комментарий
"""
Если вы находитесь внутри класса, не забудьте правильно отформатировать отступы.
Например:
class Weather2():
"""
def getStatus_code(self, url):
world.url = url
result = requests.get(url)
return result.status_code
"""
Учтите, что на самом деле это не полноценный комментарий, а строка документации (docstring), и она может быть использована для описания класса или его методов. Если вы хотите оставить комментарий, который не будет восприниматься как строка документации, лучше использовать символы #
для однострочных комментариев или оставить """ """
, но следите за тем, чтобы не использовать их в коде, где требуется выполнение.
Я думаю, что нет, за исключением того, что многострочные строки не обрабатываются. Однако большинство, если не все, IDE для Python имеют сочетание клавиш для «комментирования» нескольких строк кода.
К сожалению, строковая интерполяция не всегда может использоваться для закомментирования! Поэтому безопаснее придерживаться стандарта и добавлять #
в начале каждой строки.
Вот пример:
test1 = [1, 2, 3, 4,] # test1 содержит 4 целых числа
test2 = [1, 2, '''3, 4,'''] # test2 содержит 2 целых числа **и строку** '3, 4,'
Вы можете попробовать следующее (при выполнении quoted, ввод для первого вопроса должен быть заключен в '
):
"""
print("Как тебя зовут? ")
myName = input()
print("Приятно познакомиться, " + myName)
print("Количество символов равно ")
print(len(myName))
age = input("Сколько вам лет? ")
print("В следующем году вам будет " + str(int(age) + 1) + ".")
"""
a = input()
print(a)
print(a * 5)
Все, что заключено между """
, будет закомментировано.
Если вы ищете однострочные комментарии, то используйте #
.
Какие самые распространенные форматы docstring в Python? [закрыт]
Почему используется string.join(list), а не list.join(string)?
Создание словаря с помощью генератора словарей
Как получить полный путь к директории текущего файла?
Найти все файлы с расширением .txt в директории на Python