2.2.1.6 Строки / Strings
Строки используются, когда вам нужно обработать текст (например, всевозможные имена, адреса, романы и т. д.), а не числа.
Вы уже кое-что знаете о них, например, что строки нуждаются в кавычках, как числам с плавающей точкой.
Это очень типичная строка: "I am a string."
Однако здесь есть одна загвоздка. Уловка заключается в том, как закодировать цитату внутри строки, которая уже разделена кавычками.
Предположим, мы хотим напечатать очень простое сообщение:
I like "Monty Python"
Как это сделать, не создавая ошибки? Есть два возможных решения.
Первый основан на уже известной нам концепции escape-символа, который, как вы должны помнить, воспроизводится с помощью обратной косой черты. Обратная косая черта также может экранировать кавычки. Цитата, которой предшествует обратная косая черта, меняет свое значение - это не разделитель, а просто цитата. Это будет работать по назначению:
print("I like \"Monty Python\" ")
Примечание: внутри строки есть две экранированные кавычки - вы видите их обе?
Второе решение может показаться немного неожиданным. Python может использовать апостроф вместо цитаты. Любой из этих символов может ограничивать строки, но вы должны быть последовательны.
Если вы открываете строку цитатой, вы должны закрыть ее кавычкой.
Если вы начинаете строку с апострофа, вы должны заканчивать ее апострофом.
Этот пример тоже будет работать:
print('I like "Monty Python"')
Примечание: здесь вам не нужно сбегать.
Вы уже кое-что знаете о них, например, что строки нуждаются в кавычках, как числам с плавающей точкой.
Это очень типичная строка: "I am a string."
Однако здесь есть одна загвоздка. Уловка заключается в том, как закодировать цитату внутри строки, которая уже разделена кавычками.
Предположим, мы хотим напечатать очень простое сообщение:
I like "Monty Python"
Как это сделать, не создавая ошибки? Есть два возможных решения.
Первый основан на уже известной нам концепции escape-символа, который, как вы должны помнить, воспроизводится с помощью обратной косой черты. Обратная косая черта также может экранировать кавычки. Цитата, которой предшествует обратная косая черта, меняет свое значение - это не разделитель, а просто цитата. Это будет работать по назначению:
print("I like \"Monty Python\" ")
Примечание: внутри строки есть две экранированные кавычки - вы видите их обе?
Второе решение может показаться немного неожиданным. Python может использовать апостроф вместо цитаты. Любой из этих символов может ограничивать строки, но вы должны быть последовательны.
Если вы открываете строку цитатой, вы должны закрыть ее кавычкой.
Если вы начинаете строку с апострофа, вы должны заканчивать ее апострофом.
Этот пример тоже будет работать:
print('I like "Monty Python"')
Примечание: здесь вам не нужно сбегать.