Курс Python → Метод count в Python: почему count(», ») возвращает 4?
Метод count в Python возвращает количество вхождений подстроки в строку. Но почему 'abc'.count('') возвращает 4? Это происходит потому, что метод count считает и пустые подстроки. Таким образом, если подстрока пустая, то она считается в каждой позиции строки.
Давайте рассмотрим пример. У нас есть строка 'abc'. Если мы вызовем метод count(''), то он вернет 4, потому что пустая подстрока может быть найдена в следующих позициях: перед ‘a’, между ‘a’ и ‘b’, между ‘b’ и ‘c’ и после ‘c’.
Для более понятной реализации метода count, мы можем написать свою функцию, которая будет учитывать только непустые подстроки. Например:
def custom_count(s, substr):
if not substr:
return 0
count = 0
start = 0
while True:
start = s.find(substr, start) + 1
if start == 0:
break
count += 1
return count
Теперь, если мы вызовем custom_count('abc', ''), то получим 0, так как пустая подстрока не учитывается. Это делает метод более понятным и предсказуемым.
Другие уроки курса "Python"
- Объединение множеств в Python
- Магические методы в Python
- Замена текста с помощью sub
- Подсказки при вводе данных в Python
- Подписка на Kaspersky Team
- Операторы увеличения и уменьшения переменной
- Перевод эмодзи и эмотиконов.
- Выборка чисел
- Ошибка NotImplemented в Python
- Перетасовка списков в Python
- Оператор continue в Python
- Модуль inspect
- Enum в Python
- Взаимодействие с внешними процессами в Python
- Работа с модулем Calendar
- Обратное распространение ошибки
- Модуль subprocess: запуск внешних команд
- Работа с timedelta в Python
- Многопроцессорное программирование в Python
- Метод ifloordiv для пользовательских классов
- Извлечение аудио из видео
- Numpy: использование Ellipsis
- Манипуляция формой массива в Numpy
- Перехват исключений в Python
- Любовь к Python
- Python Поверхностное Копирование
- Метод __ixor__ для побитового исключающего ИЛИ
- Определение объема памяти объекта
- Константы в модуле cmath
- Таймер обратного отсчета
- Пропуск начальных строк с помощью dropwhile()
- Управление пакетами с pip
- Преобразование PowerPoint в PDF.
- Defaultdict в Python
- Создание GUI на Tkinter
- Декораторы в Python
- Создание задания в Cron
- Метод enumerate() в Python
- Преобразование числа в список цифр
- Итерации в Python
- Резервирование символов в Python
- Объединение списков в строку
- Функция zip() — объединение последовательностей
- Генератор списка в Python
- Очистка строки в Python
- Генерация чисел с range()
- Локальные переменные.
- Группировка элементов Python















