Python String count() с ПРИМЕРИ
⚡ Умно обобщение
Python string count() е вграден метод, който връща колко пъти даден символ или подниз се появява в низ. Незадължителните начални и крайни аргументи ограничават търсенето до конкретен сегмент от текста.

Какво е Python Брой низове()?
- броя() методът е вградена функция в Python която връща общия брой пъти, в които даден елемент се появява в низ. Броенето започва от началото на низа и продължава до края. Можете също да укажете началния и крайния индекс, откъдето искате да започне търсенето.
Синтаксис за Python Брой низове ()
- Python Функцията string count() използва следния синтаксис:
string.count(char or substring, start, end)
параметри
- символ или подниз: Единичният символ или подниз, който искате да търсите в дадения низ. count() връща колко пъти се появява в низа.
- започнете: (по избор) Показва началния индекс, от който ще започне търсенето. Ако не е зададен, започва от 0. Например, когато искате да търсите символ от средата на низа, можете да зададете началната стойност на функцията count.
- край: (по избор) Показва крайния индекс, където завършва търсенето. Ако не е зададен, ще се търси до края на низа. Например, когато не искате да сканирате целия низ и предпочитате да ограничите търсенето до определена точка, можете да зададете стойността за край във функцията count.
Връщана стойност
Методът count() ще върне цяло число, т.е. броя на дадения елемент в дадения низ. Той връща 0, ако стойността не е намерена в дадения низ.
Пример 1: Метод за преброяване на низ
Следващият пример показва работата на функцията count() върху низ.
str1 = "Hello World"
str_count1 = str1.count('o') # counting the character “o” in the givenstring
print("The count of 'o' is", str_count1)
str_count2 = str1.count('o', 0,5)
print("The count of 'o' usingstart/end is", str_count2)
Изход:
The count of 'o' is 2 The count of 'o' usingstart/end is 1
Пример 2: Броене на срещанията на символ в даден низ
Следващият пример показва срещането на символ в даден низ, както и чрез използване на началния и крайния индекс.
str1 = "Welcome to Guru99 Tutorials!"
str_count1 = str1.count('u') # counting the character “u” in the given string
print("The count of 'u' is", str_count1)
str_count2 = str1.count('u', 6,15)
print("The count of 'u' usingstart/end is", str_count2)
Изход:
The count of 'u' is 3 The count of 'u' usingstart/end is 2
Пример 3: Брой поява на подниз в даден низ
Следващият пример показва срещането на подниз в даден низ, както и чрез използване на началния и крайния индекс.
str1 = "Welcome to Guru99 - Free Training Tutorials and Videos for IT Courses"
str_count1 = str1.count('to') # counting the substring “to” in the givenstring
print("The count of 'to' is", str_count1)
str_count2 = str1.count('to', 6,15)
print("The count of 'to' usingstart/end is", str_count2)
Изход:
The count of 'to' is 2 The count of 'to' usingstart/end is 1
Python Метод count() в списък
Методът count() не е ограничен до низове. Python Списъците и кортежите предоставят и метод count(), който връща колко пъти даден елемент се появява в последователността. За разлика от низовата версия, list.count() и tuple.count() приемат само елемента, който да се търси, и не приемат аргументи за начален или краен индекс.
fruits = ['apple', 'banana', 'apple', 'grape', 'apple']
print(fruits.count('apple')) # counts how many times 'apple' appears
numbers = (1, 2, 2, 3, 2)
print(numbers.count(2)) # count() also works on a tuple
Изход:
3 3
Тъй като count() принадлежи както към низове, така и към поредици, едно и също име на метод работи независимо дали броите символи в текст или повтарящи се елементи в колекция.
Как да се преброи припокриванетоping Събития в Python
Методът count() брои само без припокриванеping срещания на подниз. Когато съвпаденията могат да се припокриват, count() отчита по-малко резултати, отколкото може би очаквате. Например, преброяването на „aa“ вътре в „aaaa“ връща 2, а не 3, защото count() преминава през всяко намерено съвпадение.
text = "aaaa"
print(text.count("aa")) # non-overlapping count is 2
import re
overlaps = len(re.findall("(?=(aa))", text))
print(overlaps) # overlapping count is 3
Изход:
2 3
За да се преброи припокриванетоping За съвпадения използвайте модула re с твърдение за предварително търсене или изпълнете цикъл с метода find(), като премествате позицията на търсене с един символ след всяко съвпадение.
» Научете повече за Python Стрингови методи
