Hello, Ada Lovelace!
Конкатенацией также можно воспользоваться для построения сообщения, которое затем сохраняется в переменной:
first_name = "ada"
last_name = "lovelace"
full_name = first_name + " " + last_name
(1) message = "Hello, " + full_name.title() + "!"
(2) print(message)
Этот код также выводит сообщение “Hello, Ada Lovelace!”, но сохранение текста сообщения в переменной (1) существенно упрощает завершающую команду печати (2).
Табуляции и разрывы строк
В программировании термином «пропуск» (whitespace) называются такие непечатаемые символы, как пробелы, табуляции и символы конца строки. Пропуски структурируют текст, чтобы пользователю было удобнее читать его.
Для включения в текст позиции табуляции используется комбинация символов \t, как в точке (1) :
>>> print("Python")
Python
(1) >>> print("\tPython")
. .Python
Разрывы строк добавляются с помощью комбинации символов \n:
>>> print("Languages:\nPython\nC\nJavaScript")
Languages:
Python
C
JavaScript
Табуляции и разрывы строк могут сочетаться в тексте. Скажем, последовательность "\n\t" приказывает Python начать текст с новой строки, в начале которой располагается табуляция.
Следующий пример демонстрирует вывод одного сообщения с разбиением на четыре строки:
>>> print("Languages:\n\tPython\n\tC\n\tJavaScript")
Languages:
. .Python
. .C
. .JavaScript
Разрывы строк и табуляции часто встречаются в двух следующих главах, когда наши программы начнут выводить относительно длинный текст.
Удаление пропусков
Лишние пропуски могут вызвать путаницу в программах. Для программиста строки 'python' и 'python ' внешне неотличимы, но для программы это совершенно разные строки. Python видит лишний пробел в 'python ' и считает, что он действительно важен — до тех пор, пока вы не сообщите о противоположном.
Обращайте внимание на пропуски, потому что в программах часто приходится сравнивать строки, чтобы проверить на совпадение их содержимое. Типичный пример — проверка имен пользователей при входе на сайт. Лишние пропуски могут создавать путаницу и в более простых ситуациях. К счастью, Python позволяет легко удалить лишние пропуски из данных, введенных пользователем.
Python может искать лишние пропуски у левого и правого края строки. Чтобы убедиться в том, что у правого края (в конце) строки нет пропусков, вызовите метод rstrip().
(1) >>> favorite_language = 'python '
(2)>>> favorite_language
'python '
(3)>>> favorite_language.rstrip()
'python'
(4)>>> favorite_language
'python '
Значение, хранящееся в переменной favorite_language в точке (1) , содержит лишние пропуски в конце строки. Когда вы приказываете Python вывести это значение в терминальном сеансе, вы видите пробел в конце значения (2). Когда метод rstrip() работает с переменной favorite_language в точке (3), этот лишний пробел удаляется. Впрочем, удаление лишь временное: если снова запросить значение favorite_language, мы видим, что строка не отличается от исходной, включая лишний пропуск (4).
Чтобы навсегда исключить пропуск из строки, следует записать усеченное значение обратно в переменную:
>>> favorite_language = 'python '
(1) >>> favorite_language = favorite_language.rstrip()
>>> favorite_language
'python'
Сначала пропуски удаляются в конце строки, а потом значение записывается в исходную переменную (1) . Операция изменения значения переменной с последующим его сохранением в исходной переменной часто выполняется в программировании. Так значение переменной может изменяться в ходе выполнения программы или в ответ на действия пользователя.
Пропуски также можно удалить у левого края (в начале) строки при помощи метода lstrip(), а метод strip() удаляет пропуски с обоих концов:
(1) >>> favorite_language = ' python '
(2)>>> favorite_language.rstrip()
' python'
(3)>>> favorite_language.lstrip()
'python '
(4) >>> favorite_language.strip()
'python'
В этом примере исходное значение содержит пропуски в начале и в конце (1) . Затем пропуски удаляются у правого края (2), у левого края (3) и с обоих концов строки (4). Поэкспериментируйте с функциями удаления пропусков, это поможет вам освоиться с работой со строками. На практике эти функции чаще всего применяются для «очистки» пользовательского ввода перед его сохранением в программе.
Предотвращение синтаксических ошибок в строках
Синтаксические ошибки встречаются в программах более или менее регулярно. Синтаксическая ошибка происходит тогда, когда Python не распознает часть вашей программы как действительный код Python. Например, если заключить апостроф в одиночные кавычки, случится ошибка. Это происходит из-за того, что Python интерпретирует все символы от первой одиночной кавычки до апострофа как строку. После этого Python пытается интерпретировать остаток текста строки как код Python, что порождает ошибки.