Простой Python. современный стиль программирования - читать онлайн бесплатно полную версию книги . Страница 39

'Eek!'

Тройные кавычки не очень полезны для таких коротких строк. Они обычно

используются для того, чтобы создать многострочные строки, наподобие следу-

ющего классического стихотворения Эдварда Леара (Edward Lear):

>>> poem = '''There was a Young Lady of Norway,

... Who casually sat in a doorway;

58

Глава 2. Ингредиенты Python: числа, строки и переменные

... When the door squeezed her flat,

... She exclaimed, "What of that?"

... This courageous Young Lady of Norway.'''

>>>

(Это стихотворение было введено в интерактивный интерпретатор, который

поприветствовал нас символами >>> в первой строке и выводил символы … до тех пор,

пока мы не ввели последние тройные кавычки и не перешли к следующей строке.)

Если бы вы попробовали создать стихотворение с помощью одинарных кавычек,

Python начал бы волноваться, когда бы вы перешли к следующей строке:

>>> poem = 'There was a young lady of Norway,

File "<stdin>", line 1

poem = 'There was a young lady of Norway,

^

SyntaxError: EOL while scanning string literal

>>>

Если внутри тройных кавычек располагается несколько строк, символы конца

строки будут сохранены внутри нее. Если перед строкой или после нее находятся

пробелы, они также будут сохранены:

>>> poem2 = '''I do not like thee, Doctor Fell.

... The reason why, I cannot tell.

... But this I know, and know full well:

... I do not like thee, Doctor Fell.

... '''

>>> print(poem2)

I do not like thee, Doctor Fell.

The reason why, I cannot tell.

But this I know, and know full well:

I do not like thee, Doctor Fell.

>>>

Кстати, существует разница между выводом на экран с помощью функции print()

и автоматическим выводом на экран с помощью интерактивного интерпретатора:

>>> poem2

'I do not like thee, Doctor Fell.\n The reason why, I cannot tell.\n But

this I know, and know full well:\n I do not like thee, Doctor Fell.\n'

Функция print() извлекает кавычки из строк и выводит на экран их содержи-

мое. Она предназначена для удобства пользователя. Эта функция любезно до-

бавляет пробел между каждым выводимым объектом, а также символ новой стро-

ки в конце:

>>> print(99, 'bottles', 'would be enough.')

99 bottles would be enough.

Строки

59