Изучаем Python | страница 24
Разберемся, как же правильно использовать одиночные или двойные кавычки. Сохраните следующую программу в файле apostrophe.py и запустите ее:
apostrophe.py
message = "One of Python's strengths is its diverse community."
print(message)
Апостроф находится в строке, заключенной в двойные кавычки, так что у интерпретатора Python не возникает проблем с правильной интерпретацией следующей строки:
One of Python's strengths is its diverse community.
Однако при использовании одиночных кавычек Python не сможет определить, где должна заканчиваться строка:
message = 'One of Python's strengths is its diverse community.'
print(message)
Программа выводит следующий результат:
. File "apostrophe.py", line 1
. .message = 'One of Python's strengths is its diverse community.'
. . . . . . . . . . . . . .^ (1)
SyntaxError: invalid syntax
Из выходных данных видно, что ошибка происходит в позиции (1) сразу же после второй одиночной кавычки. Эта синтаксическая ошибка указывает, что интерпретатор не распознает какую-то конструкцию как действительный код Python. Ошибки могут возникать по разным причинам; я буду выделять наиболее распространенные источники по мере того, как они будут встречаться нам.
Синтаксические ошибки будут часто досаждать вам, пока вы учитесь писать правильный код Python. Кроме того, ошибки этой категории также являются наиболее расплывчатыми и неконкретными, поэтому их особенно трудно находить и исправлять. Если вы зайдете в тупик из-за особенно коварной ошибки, обращайтесь к рекомендациям в приложении В.
примечание
Функция цветового выделения синтаксиса ускоряет выявление некоторых синтаксических ошибок прямо во время написания программы. Если вы увидите, что код Python выделяется как обычный текст (или обычный текст выделяется как код Python), скорее всего, в вашем файле где-то пропущена кавычка.
Вывод в Python 2
В Python 2 команда print имеет немного иной синтаксис:
>>> python2.7
>>> print "Hello Python 2.7 world!"
Hello Python 2.7 world!
В Python 2 выводимый текст не обязательно заключать в круглые скобки. Формально в Python 3 print является функцией, поэтому круглые скобки обязательны. Некоторые команды print в Python 2 содержат круглые скобки, однако их поведение несколько отличается от того, что вы видите в Python 3. Когда вы смотрите на код, написанный на Python 2, с большой вероятностью в одних командах print будут присутствовать круглые скобки, а в других круглых скобок не будет.