Строки — неизменяемый тип

Хотя у строк есть методы, это неизменяемый (еще говорят «иммутабельный») тип данных.

Каждый раз, когда мы говорим про «изменение» строки, технически мы создаем новый объект и записываем туда вычисленное значение. При работе над строкой всегда возвращается новая строка. Это очень непохоже на другие типы данных!

Срезы(слайсы)[1:4] и индексы [1] работают в строках как и в списках:

s = "Полиморфизм"
print(s[0])
s = "Полиморфизм"
print(s[:5])

len считает символы в строке

print(len("Мама, я графоман, спасите!"))

For ... in ... перебирает строку побуквенно

my_str = "Алиса"

for i in my_str:
  print(i)

.count считает количество вхождений в строку

email = '[email protected]'
print(email.count('**@**'))
email = 'Слов примерно столько, сколько пробелов – но это не точно. Посчитайте – узнаете'
print(email.count(' '))