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
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
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
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