Ряд ответов получил много баллов, но не дает полного представления о том, как все работает. Подводя итог ...
# comment
- это то, как Python делает реальные комментарии (аналогично bash и некоторым другим языкам). Python имеет только комментарии «до конца строки», у него нет явной многострочной оболочки комментариев (в отличие от javascript /* .. */
). Большинство Python IDE позволяют вам выбирать и комментировать блок за раз, именно так многие люди справляются с этой ситуацией.
Тогда есть обычные однострочные строки Python: они могут использовать кавычки '
или "
(например, 'foo'
"bar"
). Основное ограничение в том, что они не переносятся на несколько строк. Вот для чего используются многострочные строки: это строки, окруженные тройными одинарными или двойными кавычками ('''
или """
) и заканчивающиеся только при обнаружении соответствующего неэкранированного терминатора. Они могут проходить столько строк, сколько необходимо, и включать все промежуточные пробелы.
Любой из этих двух строковых типов определяет полностью нормальный строковый объект. Им можно присвоить имя переменной, применить к ним операторы и т. Д. После анализа нет различий между любыми форматами. Однако есть два особых случая, основанные на , где строка и как она используется ...
Во-первых, если строка только что записана, без каких-либо дополнительных операций и не назначена переменной, что с ней происходит? Когда код выполняется, пустая строка в основном отбрасывается. Таким образом, люди сочли удобным комментировать большие фрагменты кода Python, используя многострочные строки (при условии, что вы избегаете любых внутренних многострочных строк). Это не так часто или семантически правильно, но допускается .
Второе использование заключается в том, что любые такие пустые строки, которые следуют сразу после def Foo()
, class Foo()
или запуска модуля, обрабатываются как строки, содержащие документацию для этого объекта, и сохраняются в атрибуте __doc__
объекта. Это наиболее распространенный случай, когда строки могут показаться «комментарием». Разница в том, что они выполняют активную роль как часть проанализированного кода, хранятся в __doc__
... и, в отличие от комментария, они могут быть прочитаны во время выполнения.