Działania na tekście w języku Python

Python oferuje szeroki zestaw narzędzi do pracy z tekstem, umożliwiając operacje takie jak przeszukiwanie, modyfikowanie, porównywanie czy formatowanie ciągów znaków. Tekst (ciąg znaków) w Pythonie jest reprezentowany jako typ danych str, który można łatwo manipulować za pomocą różnych metod i operatorów.

1. Podstawowe operacje na tekstach

Tworzenie ciągów znaków
Aby utworzyć ciąg znaków w Pythonie, wystarczy umieścić tekst w pojedynczych ('...') lub podwójnych ("...") cudzysłowach:

tekst1 = 'Ala ma kota’
tekst2 = 'Python jest super’

Łączenie tekstów (konkatenacja)
Można łączyć ciągi znaków za pomocą operatora +:

tekst1 = 'Ala ma ’
tekst2 = 'kota’
wynik = tekst1 + tekst2 # 'Ala ma kota’

Powielanie tekstów
Tekst można powielać, używając operatora *:

tekst = 'ha’ * 3 # 'hahaha’

2. Indeksowanie i wycinanie (slicing)

Ciągi znaków można traktować jak listy znaków, gdzie każdy znak ma przypisany indeks:

  • Indeksowanie zaczyna się od 0 (pierwszy znak).
  • Można używać indeksów ujemnych, aby liczyć od końca.

Przykład indeksowania:

tekst = 'Python’
pierwszy_znak = tekst[0] # 'P’
ostatni_znak = tekst[-1] # 'n’

Wycinanie tekstu (slicing)
Wycinki pozwalają na pobieranie części tekstu za pomocą składni tekst[start], gdzie:

  • start to początkowy indeks (włącznie).
  • stop to końcowy indeks (wyłącznie).

Przykłady:

tekst = 'Python’
fragment1 = tekst[1:4] # 'yth’
fragment2 = tekst[:3] # 'Pyt’
fragment3 = tekst[3:] # 'hon’

3. Przeszukiwanie tekstów

Sprawdzanie, czy tekst zawiera określony ciąg znaków
W Pythonie można łatwo sprawdzić, czy dany podciąg występuje w tekście, używając operatora in:

tekst = 'Ala ma kota’
czy_zawiera = 'kot’ in tekst # True

Metoda find()
Służy do wyszukiwania pierwszego wystąpienia określonego ciągu znaków. Zwraca indeks znalezionego podciągu lub -1, jeśli nie znaleziono:

tekst = 'Ala ma kota’
indeks = tekst.find(’kot’) # 7

Metoda count()
Pozwala na zliczenie wystąpień określonego ciągu znaków w tekście:

tekst = 'Ala ma kota, a kot ma Alę’
liczba_wystapien = tekst.count(’kot’) # 2

4. Modyfikowanie tekstów

Zmiana wielkości liter
Metody takie jak upper(), lower(), capitalize(), title() pozwalają na zmianę wielkości liter:

tekst = 'Python jest fajny’
tekst_upper = tekst.upper() # 'PYTHON JEST FAJNY’
tekst_lower = tekst.lower() # 'python jest fajny’
tekst_title = tekst.title() # 'Python Jest Fajny’

Zamiana fragmentów tekstu
Metoda replace() pozwala zamienić wszystkie wystąpienia określonego ciągu znaków na inny:

tekst = 'Ala ma kota’
tekst_zmieniony = tekst.replace(’kot’, 'pies’) # 'Ala ma psa’

5. Formatowanie tekstów

Formatowanie ciągów znaków pozwala na dynamiczne wstawianie wartości do tekstu. Można używać różnych technik, takich jak:

F-Stringi (od wersji 3.6)
Pozwalają na bezpośrednie wstawianie wartości zmiennych do tekstu:

imię = 'Ala’
zwierzę = 'kot’
tekst = f'{imię} ma {zwierzę}a’ # 'Ala ma kota’

Metoda format()
Umożliwia wstawianie wartości do tekstu za pomocą specjalnych znaczników {}:

tekst = 'Ala ma {}’.format(’kota’) # 'Ala ma kota’

6. Rozbijanie i łączenie tekstów

Rozbijanie tekstu na listę słów (split())
Metoda split() pozwala podzielić tekst na listę słów, bazując na określonym separatorze (domyślnie spacja):

tekst = 'Ala ma kota’
słowa = tekst.split() # [’Ala’, 'ma’, 'kota’]

Łączenie listy słów w tekst (join())
Metoda join() pozwala na połączenie elementów listy w jeden ciąg znaków:

słowa = [’Ala’, 'ma’, 'kota’]
tekst = ’ ’.join(słowa) # 'Ala ma kota’

7. Usuwanie białych znaków

Metody strip(), lstrip()rstrip() służą do usuwania białych znaków z początku i końca tekstu:

tekst = ’ Ala ma kota ’
czysty_tekst = tekst.strip() # 'Ala ma kota’

8. Podsumowanie

Działania na tekstach w Pythonie są intuicyjne i oferują wiele możliwości manipulacji ciągami znaków. Dzięki różnym wbudowanym metodom można łatwo przeszukiwać, modyfikować, formatować i przetwarzać teksty, co czyni Pythona bardzo przydatnym językiem do pracy z danymi tekstowymi.

Przykłady powyżej pokazują podstawowe techniki, które można stosować do rozwiązywania codziennych problemów związanych z przetwarzaniem tekstów. Warto eksperymentować i poznać więcej metod, aby w pełni wykorzystać możliwości Pythona w pracy z ciągami znaków.

Was this helpful?

0 / 0