Rozdział 8 · Zabawa literami i słowami

Metody łańcuchowe: wyszukiwanie i parsowanie

Zastępujemy podłańcuchy, dzielimy łańcuch znaków na części i ponownie sklejamy — a także szukamy podłańcuchów w tekście.

replace() - Wymiana podciągu

replace.py
text = „Kocham Java”
print(text.replace("Java", "Python"))   # Kocham Python
Oryginalna łańcuch znaków„Kocham Java”.replace(...)"Java" → "Python"Rezultat„Kocham Python”
text.replace("Java", "Python") - zastępuje WSZYSTKIE wystąpienia podciągu

split() to podzielić linię na części

split() bez argumentów dzieli łańcuch znaków na spacji (oraz grupy spacji) przez lista pojedyncze słowa:

split.py
sentence = „Kot i Pies”
words = sentence.split()
print(words)          # ['kot', 'i', 'pies']
print(len(words))     #3 słowa
Oryginalna łańcuch znaków„Kot i Pies”.split()podzielić według spacjiLista słów['kot', 'ja', 'pies']
split() zamienia łańcuch znaków w lista słów (więcej na liście w rozdziale 10)

Możesz określić własny separator, na przykład przecink:

split_razdelitel.py
csv_row = „Ada, 28 lat, programistka”
fields = csv_row.split(",")
print(fields)          # ['Ada', '28', 'programmer']

join() jest operacją odwrotną: sklej lista w linię

join.py
words = [„kot”, „i”, „pies”]
result = "-".join(words)
print(result)          #cat-i-pies
Lista słów['kot', 'ja', 'pies']"-".join(...)klej z łącznikiemString„Kot-i-Pies”
join() to działanie odwrotne split(): które przykleja lista z powrotem do sznurka

count() — ile razy się pojawia

count.py
text = Mississippi
print(text.count(„c”))     # 4
print(text.count(„si”))    # 2

find() i index() – gdzie się pojawia

Obie metody szukają podciągu i zwracają indeks jego pierwszego znaku. Różnica polega na zachowaniu, Gdy łańcuch znaków nie zostaje znaleziona:

find_i_index.py
text = "Python"
print(text.find("th"))     #2 – Znalezione, zaczyna się od indeksu 2
print(text.find("zz"))     # -1 — nie znaleziono, find() zwraca -1

print(text.index("th"))    # 2 — to samo co find(), jeśli znaleziono
# text.index("zz") # ValueError: substring not found – index() "zawiesza się" z błędem!
Kiedy wybrać co
Jeśli łańcuch znaków podciągu może nie być w tekście — użyj find() i sprawdź wynik dla -1. Jeśli jesteś pewien, że łańcuch znaków musi być (i chcesz od razu wiedzieć, czy nie), index() zgłasza błąd wyraźnie, zamiast cicho zwracać -1.

startswith() i endswith()

startswith_endswith.py
filename = "otchet_2026.pdf"
print(filename.startswith("otchet"))   # True
print(filename.endswith(".pdf"))       # True
print(filename.endswith(".docx"))      # False
★★ Zadanie samodzielne
Parsowanie nazwy pliku

Dla łańcuch znaków "report_final_v2.pdf" sprawdź endswith(". pdf"), znajdź pozycję znaku "_" metodą find() i przez split("_") uzyskaj lista części nazwy.

Praktyka: Wyszukiwanie i parsowanie łańcuchów
interaktywny laptop bezpośrednio w przeglądarce – Python 3.14 przez Pyodide, bez instalacji
Otwórz praktykę →