Символы строки
Строка — не список, но в чём-то работает как список. У каждого символа в строке есть индекс, который отсчитывается от 0, и его можно прочитать с помощью квадратных скобок. Отрицательные индексы тоже работают:
language = "Python"
print(language[0])
print(language[1])
print(language[-1])Вывод:
P
y
nФункция len() работает и для строк: она даёт число символов. Пробелы и знаки препинания — тоже символы, поэтому в строке "Привет, Том!" 12 символов:
print(len(language))
print(len("Привет, Том!"))Вывод:
6
12Как и в случае со списком, чтение за концом строки завершается ошибкой, на этот раз IndexError: string index out of range.
Но есть и большое отличие: символ в строке изменить нельзя. Созданная строка остаётся такой, какая она есть:
language = "Python"
language[0] = "J"Программа завершится с такой ошибкой:
Traceback (most recent call last):
File "<exec>", line 2, in <module>
TypeError: 'str' object does not support item assignmentstr — название строки в Python (вы знаете его по функции str()), а item assignment означает присваивание элементу по индексу. Сообщение говорит, что строка этого не позволяет. Если вам нужна другая строка, создайте новую, например с помощью + или f-строки, и сохраните её в переменной.
Задание
- 1
Создайте переменную
first_charс первым символом строкиname. - 2
Создайте переменную
last_charс последним символом строкиname. Используйте отрицательный индекс. - 3
Выведите оба символа и длину имени:
print(first_char, last_char, len(name)). Вывод должен быть таким:С а 8.