Подсчёт символов в строке
Подсчёт символов в строке — это последовательный просмотр всех её символов и увеличение нужных счётчиков. Так можно определить количество букв, цифр, пробелов или символов, удовлетворяющих заданному условию.
Перед началом полезно знать длину строки: она определяет число позиций, которые нужно просмотреть. Затем символы перебирают циклом. Для каждого символа проверяют условие и при выполнении увеличивают соответствующую переменную на единицу. Такой алгоритм является одним из приёмов обработки строк.
Здесь \(n\) — длина строки, \(s_i\) — символ на позиции \(i\), \(P(s_i)\) — проверяемое условие, а квадратные скобки имеют значение 1, если условие истинно, и 0 — если ложно. Поэтому \(C\) равен числу символов, удовлетворяющих условию.
Пусть дана строка «A1 b2». Чтобы посчитать цифры, просматриваем символы A, 1, пробел, b, 2. Условие «символ является цифрой» выполняется для 1 и 2, поэтому результат равен 2. В программе достаточно завести count = 0 и увеличивать его при каждом найденном совпадении.
s = "A1 b2" digits = 0 spaces = 0 for ch in s: if ch.isdigit(): digits += 1 if ch == " ": spaces += 1 print(digits, spaces)
Длина строки показывает количество всех символов, а подсчёт символов по условию — только количество подходящих. Например, в строке «A1 b2» длина равна 5, цифр — 2, пробелов — 1. Также не следует путать подсчёт с подсчётом элементов массива: здесь перебираются символы одной строки.
Сколько раз сработает счётчик цифр при обработке строки «7a09»?
Главное
- Перебирайте каждый символ строки и проверяйте нужное условие.
- Для каждого вида подсчитываемых символов используйте счётчик, начиная с нуля.
- Длина строки учитывает все символы, а условный подсчёт — только подходящие.