Python String count() s PŘÍKLADY

⚡ Chytré shrnutí

Python Metoda string count() vrací, kolikrát se znak nebo podřetězec objeví v řetězci. Volitelné argumenty začátku a konce omezují vyhledávání na konkrétní část textu.

  • 🔢 Návratová hodnota: count() vrací celé číslo, počet nepřekrývajících seping výskytů, nebo 0, když prvek chybí.
  • 🎯 Začátek a konec: Volitelné počáteční a koncové indexy omezují počet na vybranou část řetězce.
  • 🔠 Citlivost písmen: Počítání rozlišuje velká a malá písmena, proto před porovnáváním textu se smíšenými velkými a malými písmeny proveďte normalizaci pomocí funkce lower() nebo upper().
  • ???? Seznamy a n-tice: Metoda count() také počítá, kolikrát se prvek objeví v seznamu nebo n-tici.
  • 🔁 Překrývání: count() přeskakuje překrýváníping shody, takže find() ve smyčce nebo regulární výraz tyto případy řeší.
  • 🤖 Asistence AI: Asistenti kódování s umělou inteligencí generují logiku count() a frekvence tokenů count pro strojové učení a NLP.

Python Počet řetězců()

Co je to Python Počet řetězců()?

Jedno počet() metoda je vestavěná funkce v Python , která vrací celkový počet výskytů daného prvku v řetězci. Počítání začíná od začátku řetězce a pokračuje až do konce. Můžete také zadat počáteční a koncový index, od kterého chcete začít s vyhledáváním.

Syntaxe pro Python Počet řetězců()

Jedno Python Funkce string count() používá následující syntaxi:

string.count(char or substring, start, end)

parametry

  • znak nebo podřetězec: Jeden znak nebo podřetězec, který chcete v daném řetězci vyhledat. Funkce count() vrací, kolikrát se v řetězci objevuje.
  • Start: (volitelné) Určuje počáteční index, od kterého bude vyhledávání zahájeno. Pokud není zadán, začíná od 0. Například pokud chcete hledat znak od středu řetězce, můžete funkci count zadat počáteční hodnotu.
  • konec: (volitelné) Označuje koncový index, kde končí vyhledávání. Pokud není zadán, bude se hledat až do konce řetězce. Například pokud nechcete prohledat celý řetězec a chcete omezit vyhledávání na konkrétní bod, můžete zadat hodnotu na konec ve funkci count.

Návratová hodnota

Metoda count() vrátí celočíselnou hodnotu, tj. počet daného prvku v daném řetězci. Pokud hodnota v daném řetězci není nalezena, vrátí 0.

Příklad 1: Metoda počítání na řetězci

Následující příklad ukazuje fungování funkce count() na řetězci.

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)

Výstup:

The count of 'o' is 2
The count of 'o' usingstart/end is 1

Příklad 2: Počet výskytů znaku v daném řetězci

Následující příklad ukazuje výskyt znaku v daném řetězci, a to i pomocí počátečního a koncového indexu.

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)

Výstup:

The count of 'u' is 3
The count of 'u' usingstart/end is 2

Příklad 3: Počet výskytů podřetězce v daném řetězci

Následující příklad ukazuje výskyt podřetězce v daném řetězci, a to i pomocí počátečního a koncového indexu.

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)

Výstup:

The count of 'to' is 2
The count of 'to' usingstart/end is 1

Python Metoda count() v seznamu

Metoda count() není omezena pouze na řetězce. Python Seznamy a n-tice také poskytují metodu count(), která vrací, kolikrát se daný prvek v sekvenci objeví. Na rozdíl od řetězcové verze, list.count() a tuple.count() akceptují pouze prvek, který se má hledat, a nepřijímají argumenty počátečního ani koncového indexu.

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

Výstup:

3
3

Protože metoda count() patří jak řetězcům, tak sekvencím, stejný název metody funguje bez ohledu na to, zda počítáte znaky v textu nebo opakované položky v kolekci.

Jak počítat překrytíping Výskyty v Python

Metoda count() počítá pouze nepřekrývající se hodnoty.ping výskyty podřetězce. Pokud se shody mohou překrývat, funkce count() hlásí méně výsledků, než byste očekávali. Například počítání „aa“ uvnitř „aaaa“ vrátí 2 místo 3, protože funkce count() prochází každou nalezenou shodou.

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

Výstup:

2
3

Pro výpočet překrytíping shody, použijte modul re s asercí vyhledávání dopředu nebo smyčku s metodou find() a po každé shodě posuňte pozici vyhledávání o jeden znak.

" Dozvědět se víc o Python Řetězcové metody

Nejčastější dotazy

Ano. count() přesně porovnává znaky, takže „Hello“.count(“h”) vrací 0, zatímco „Hello”.count(“H”) vrací 1. Pokud potřebujete počítání bez rozlišování velkých a malých písmen, nejprve převeďte řetězec pomocí lower() nebo upper().

Funkce count() vrací 0, pokud se znak nebo podřetězec v řetězci neobjevuje. Nikdy nevyvolá chybu pro chybějící prvek, takže je bezpečné ji používat přímo uvnitř podmínek a porovnávání.

Předání prázdného řetězce vrátí délku řetězce plus jedna, protože Python počítá prázdné shody mezi každým znakem a na obou koncích. Pro „abc“ je výsledek 4.

Ne. count() přijímá jeden znak nebo podřetězec na jedno volání. Pro sečtení více znaků dohromady použijte collections.Counter, která vrací frekvenci každého znaku v řetězci v jednom průchodu.

Funkce count() vrací, kolikrát se podřetězec objeví, zatímco funkce find() vrací index jeho prvního výskytu nebo -1, pokud chybí. Pro součty použijte funkci count() a pro nalezení pozice v ní find().

Ano. count() je implementován v C, takže prohledává řetězec mnohem rychleji než ekvivalentní funkce. Python smyčka for. Pokud potřebujete pouze nepřekrývající se parametry, preferujte count() kvůli čitelnosti i rychlosti.ping součty.

Asistenti umělé inteligence generují kód count() a collections.Counter z pokynů v prostém jazyce. Ve strojovém učení a NLP vytváří počítání četností slov nebo tokenů funkce, jako jsou vektory „bag-of-words“, které modely používají ke klasifikaci.

Ano. GitHub Copilot automaticky dokončuje volání count() z krátkého komentáře popisujícího váš cíl. Nástroje umělé inteligence Agentic jdou ještě dál, píší logiku počítání, přidávají počáteční a koncové argumenty a spouštějí testy za vás.

Shrňte tento příspěvek takto: