Program często komunikuję się z użytkownikiem, a robi to za pomocą tekstu. Tekst jest w programach wyświetlany, wprowadzany czy przetwarzany, w językach programowania teksty to często po prostu łańcuchy/ tablice znaków. Nazywamy je stringami.
W Pythonie mamy także do czynienia ze stringami, i możemy się nimi fajnie bawić – mamy dużo metod do przetwarzania stringów. Jest to podstawowy typ danych pozwalający przykładowo wprowadzić czy wyświetlić nazwę lub treść komunikatu.
Zasięg stringa i jego identyfikowalność
Tekst w językach programowania ma początek i koniec, ponieważ komputer musi wiedzieć i mieć oddzielony dany tekst od innych rzeczy – słów kluczowych języka, czy chociażby liczb, które mogą przecież wystąpić także w tekście. Do zaznaczania początku i końca łańcucha tekstowego w Pythonie, możemy użyć cudzysłowu lub apostrofów:
„to jest tekst”
’to jest tekst’
Możliwe jest też stosowanie razem wspomnianych znaków początku i końca tekstu w takim sensie, że możemy w środku apostrofów umieścić cudzysłów (i zostanie on wyświetlony) lub odwrotnie.
Operacje na stringach
Na stringach w Pythonie możemy wykonywać wiele operacji, sama biblioteka standardowa udostępnia wiele metod służących do pracy na stringach. Jedna z podstawowych operacji to tzw. konkatenacja.
Konkatenacja – połączenie dwóch lub więcej stringów w jeden dłuższy. Realizujemy to poprzez operator dodawania dodany między stringami.
Widzimy, że ten sam operator – plus z działania dodawania na liczbach – może być używany w różnych kontekstach. Operatory zatem mogą pełnić różne funkcje, w zależności od tego na jakich danych pracują. Jeśli operatora dodawania użyjemy na liczbach to otrzymamy sumę tych liczb, jeśli zaś na stringach, uzyskamy konkatenacje, czyli po prostu połączenie stringów.
Jak mówiliśmy stringi są po prostu takimi tablico-łańcuchami znaków. Oznacza to, że do każdej litery możemy odwołać się jak do elementu listy – po jego indeksie (oczywiście numerujemy od zera).
Po co Nam indexy? A no po to by można było się odwołać do konkretnej litery i ją zmienić, albo do wypisania wszystkich liter danego słowa. Możemy też sprawdzać czy ostatnia litera to a, co może ułatwiać znalezienie imion kobiecych.
Konkatenacja i inne w praktyce
Jak w praktyce wygląda konkatenacja? Nic trudnego, wystarczy między dwie zmienne lub bezpośrednio stringi, wstawić plusik, jak poniżej.
Powyższy kod wyświetli nam napis 'kurspython’, nie zmieniając w żaden sposób składowych stringów biorących udział w operacji konkatenacji. Natomiast gdybyśmy chcieli wprowadzić odstęp między słowami 'kurs’ i 'python’ – musielibyśmy dodać w którymś spację, lub w samym działaniu dopisać jeszcze ciąg znaków zawierjący spację:
Możemy też dostać się do konkretnego znaku w tekście używając składni z nawiasami kwadratowymi, dopisując je po nazwie stringa. Gdybyśmy np. chcieli dostać się do litery 'h’ w stringu 'python’ – musimy odwołać się do indeksu numer 3, bowiem numerację zaczynamy od zera.
Powyższy kod wyświetli nam oczywiście literę h, natomiast odwołanie się do znaku przykładowo o numerze 10, wyświetli nam błąd, mówiący, że nie mamy tylu indeksów:
W następnym poście opowiemy sobie jeszcze więcej o stringach, do zobaczenia! Siła w kodzie 🙂
1 komentarz do “Myśląc o Pythonie: tekst czyli string cz.1”