Jak zaimplementować i bawić się ciągami znaków w Pythonie



W tym artykule znajdziesz szczegółową i wszechstronną wiedzę na temat pracy z ciągami znaków w Pythonie z mnóstwem przykładów.

Kiedy gramy w ciągi znaków w języku programowania Python, mamy na myśli zbiór znaków przechowywanych w pamięci ciągłej, na których możemy operować, aby manipulować zestawem znaków np. pobierz znak w indeksie, zamień zestaw znaków, przekonwertuj z wielkich na małe i odwrotnie, itd.

  • Co to są ciągi znaków w Pythonie?
  • Jak używać ciągów, indeksowania i wycinania?
  • Dzielenie i łączenie ciągów
  • Operacje na łańcuchu w Pythonie

Co to są ciągi znaków w Pythonie?

Ciągi znaków w Pythonie są instancjami klasy. Jest to klasa wbudowana z wieloma funkcjami pomocniczymi do operowania na łańcuchach. Ciągi znaków są niezmienne, tj. Ciąg znaków w Pythonie nie może być modyfikowany po utworzeniu. Jeśli zmodyfikujesz ciąg, utworzy on nowy ciąg w pamięci do przechowywania zmodyfikowanego ciągu.





Sprawdź typ ciągu literału: Funkcja type () zwraca typ zmiennej w Pythonie

s1 = 'Witaj!' print (typ (s1))

Wynik:



Jak używać ciągów, indeksowania i wycinania?

Różne sposoby inicjalizacji ciągów:

# Pojedyncze cudzysłowy str1 = 'Cześć, nauczmy się ciągów w Pythonie' print (str1) # Podwójne cudzysłowy str1 = 'Cześć, nauczmy się ciągów w Pythonie' print (str1) # Pojedyncze cudzysłowy w double, nie ma potrzeby ich uciekać lub dopasuj je str1 = 'Witaj, jak tam twój przyjaciel? '# Podwójne cudzysłowy w pojedynczym, nie trzeba ich zmieniać ani dopasowywać. Str1 =' Witaj, jak się ma twój przyjaciel 'K'? ' str2 = 'Witaj,' Jak się miewa twój przyjaciel K? ' print (str1) print (str2) # potrójne cudzysłowy to ciągi wielowierszowe str1 = '' 'Witaj, witaj w napisach w Pythonie' '' print (str1) str1 = '' 'Witaj, witaj w napisach w Pythonie' '' print ( str1)

Wynik:



Cześć, nauczmy się ciągów znaków w Pythonie

Cześć, nauczmy się ciągów znaków w Pythonie

Witam, jak tam twój przyjaciel „K”?

Witam, „Jak się ma twój przyjaciel K?

Witam serdecznie

stringi w Pythonie

Witam serdecznie

jak zadeklarować tablicę obiektów w java

stringi w Pythonie

Indeksowanie i wycinanie

  • Indeksowanie służy do wskazywania pliku pojedynczy znak w ciągu

  • Do wybierania można użyć łączenia podciąg lub a sekwencja znaków zgodnie z zasadami łączenia

  • Indeksowanie używa notacji: p [ indeks ] gdzie indeks jest liczbą od 0 do len (str) - 1

  • Cięcie używa notacji: p [ początek : zatrzymać : krok ]

    • początek : początkowy indeks wycinka, będzie zawierał element w tym indeksie, chyba że jest taki sam jak stop, domyślnie 0, czyli pierwszy indeks. Jeśli jest ujemny, oznacza rozpoczęcie n elementów od końca.

    • zatrzymać: indeks końcowy wycinka, nie zawiera elementu w tym indeksie, domyślnie długość sekwencji, która jest cięta, to znaczy do końca włącznie.

    • krok : kwota, o jaką rośnie indeks, domyślnie wynosi 1. Jeśli jest ujemna, przecinasz iterowalność w odwrotnej kolejności.

  • Cięcie działa na lista jak również lub w tym przypadku jakąkolwiek sekwencję. Na tym blogu patrzymy na same struny.

Strings-in-python

Przykłady indeksowania i wycinania:

str1 = 'Indie, naród miliarda ludzi' print ('str1:', str1) # print first character print ('Index 0:', str1 [0]) # print last character print ('Index -1:', str1 [-1]) # Składnia krojenia [start: end: step] # Cięcie od drugiego do czwartego znaku ('Slice [1: 5] =', str1 [1: 5]) # Cięcie od pierwszego do drugiego ostatniego znaku ('Slice [0: -2] =', str1 [0: -2]) # Połącz łańcuch, aby uzyskać znaki przy parzystym wydruku indeksu ('Parzysty indeks:', str1 [:: 2]) # Połącz łańcuch do pobierz znaki z nieparzystego indeksu print ('Odd index:', str1 [1 :: 2]) # Skrót do wycinania w celu odwrócenia wydruku ciągu ('Odwróć przy użyciu cięcia:', str1 [:: - 1])

Wynik:

str1: Indie, naród miliardowy

Indeks 0: I.

Indeks -1: e

Wycinek [1: 5] = ndia

Kawałek [0: -2] = Indie, naród miliardowy

Indeks parzysty: Ida aino ilo epe

Indeks nieparzysty: ni, anto fblinpol

Odwróć, używając plastrowania: elpoep noillib fo noitan a, aidnI

co to jest sesja w java

Dzielenie i łączenie ciągów

  • Dzielenie ciągów

Spójrzmy bezpośrednio na przykład, aby zrozumieć, jak podzielić zdanie na słowa:

str1 = 'To jest ciąg, który podzielimy na listę słów' # Domyślnie funkcja split dzieli się na spację list_of_words = str1.split () print (list_of_words)

Wynik:

[„This”, „is”, „the”, „string”, „my”, „will”, „split”, „into”, „a”, „list”, „of”, „words”]

Teraz podzielmy na separator, powiedzmy przecinek:

str1 = 'Literatura, najogólniej, to zbiór prac pisemnych' # Podzielmy na przecinek my_list = str1.split (',') print (my_list)

Wynik:

[„Literatura”, „najogólniej”, to „zbiór dzieł pisemnych”]

  • Łączenie ciągów

Jednym z najprostszych podejść jest użycie operatora „+”, który może łączyć dwa ciągi:

str1 = 'Python' str2 = 'Is Fun' # Łączenie dwóch ciągów print (słowo1 + słowo2) # Bardziej czytelne, łączenie 3 ciągów, słowo1, spacja '' i str3 print (słowo1 + '' + słowo2)

Wynik:

Python Fun

Python jest fajny

Kilka zasad dotyczących konkatenacji:

  • Konkatenacja działa tylko na obiektach „str”
  • Jeśli dołączone są obiekty innych typów, Python zgłosi błąd.
  • W przeciwieństwie do innych języków, Python nie będzie automatycznie rzutował innych typów na łańcuch
  • Python wymaga jawnego typecast do łańcucha przy użyciu funkcji str ()

Poniższy kod nie działa:

str1 = 'Python' str2 = 'Is Fun' str3 = 'Percent' print (str1 + str2 + 100 + str3)

Wynik:

-------------------------------------------------- ------------------------- TypeError Traceback (ostatnie wywołanie ostatnie) w 2 str2 = 'Is Fun' 3 str3 = 'Percent' --- -> 4 print (str1 + str2 + 100 + str3) TypeError: musi być str, a nie int

Napraw to, jawnie konwertując liczbę całkowitą 100 na ciąg:

str1 = 'Python' str2 = 'Is Fun' str3 = 'Percent' print (str1 + str2 + str (100) + str3)

Wynik:

Python jest fajny na 100 procent

Łączenie listy ciągów

Możemy łatwo łączyć łańcuchy za pomocą listy ciągów

  • Przystąp() funkcja jest dostępna dla każdego obiektu typu „str”
  • join () akceptuje tylko listę łańcuchów, jeśli zawiera ona elementy niebędące łańcuchami, python zgłosi błąd
list_of_words = ['This', 'is', 'the', 'string', 'my', 'will', 'split', 'into', 'a', 'list', 'of', 'words' ] # Zacznij od pustego ciągu i użyj funkcji łączenia, która jest dostępna na obiektach typu 'str' zdanie = '' .join (list_of_words) print (zdanie) # Użyj łańcucha z jedną spacją tym razem zdanie = '' .join (list_of_words ) print (zdanie) # Tym razem użyj łańcucha z jednym myślnikiem / myślnikiem zdanie = '-'. join (list_of_words) print (zdanie) # Możesz zauważyć, że ciąg, na którym nazywamy łączenie, jest używany do łączenia elementów w ' list_of_words '

Wynik:

To ciągnie się rozdziela na słowa
To jest ciąg, który podzielimy na listę słów
To jest ciąg-podzielimy-na-listę-słów

Operacje na łańcuchu w Pythonie

Typ „str” w Pythonie ma wiele wbudowanych funkcji

  • str. góra ()
  • str. dolne ()
  • str.find ()
  • str.replace ()
  • str.split ()
  • str.join ()
  • Wiele więcej

Funkcje str.join () i str.split () widzieliśmy już w ostatniej sekcji. Zrozumiemy pozostałe funkcje wymienione powyżej.

# konwertuj na wielkie litery drukuj ('python'.upper ()) # konwertuj na małe litery drukuj (' PYTHON'.lower ()) # znajdź indeks 'th' print ('Python'.find (' th ')) # zamień podciąg „0” na „100” print („Python jest zabawny 0 procent”. zamień („0”, „100”))

Wynik:

PYTON

pyton

2

Python jest fajny na 100 procent

W ten sposób dochodzimy do końca tych ciągów w blogu Pythona. Mam nadzieję, że wszystkie twoje wątpliwości dotyczące ciągów znaków w Pythonie są teraz jasne.

Aby uzyskać dogłębną wiedzę na temat języka Python i jego różnych aplikacji, możesz zarejestrować się na żywo z całodobowym wsparciem i dożywotnim dostępem.