Pythona | Podziel ciąg na listę znaków
Biorąc pod uwagę ciąg znaków, napisz program w języku Python, który podzieli znaki danego ciągu na listę za pomocą Pyton . W tym artykule przyjrzymy się różnym metodom podziału ciągu znaków na listę znaków, co umożliwi programistom efektywną manipulację i pracę z pojedynczymi znakami.
Input: geeks Output : ['g', 'e', 'e', 'k', 's'] Input: Word Output : ['W', 'o', 'r', 'd'] Explanation: In this, we are splitting the string into a list of characters in Python.
Ciąg podzielony w Pythonie w metodzie listy
Poniżej znajduje się lista metod, które wykorzystamy w tym artykule:
- Używając metody unpack(*).
- Korzystanie z pętli
- Korzystanie ze zrozumienia list
- Korzystanie z rzutowania typu list().
- Za pomocą rozszerzyć() funkcjonować
- Korzystanie z itertools
- Korzystanie z wycinania listy
Python Podziel ciąg znaków na liście za pomocą metody unpack(*).
Akt rozpakowywania polega na wyjmowaniu rzeczy, w szczególności takich, które można iterować słowniki , listy , I krotki .
Python3
string> => 'geeks'> print> ([> *> string])> |
Wyjście
['g', 'e', 'e', 'k', 's']
Złożoność czasowa: O(n), gdzie n jest długością słowa wejściowego.
Przestrzeń pomocnicza: NA)
Python Podziel ciąg znaków na liście za pomocą pętli
Tutaj dzielimy litery w sposób natywny za pomocą pętli, a następnie dołączamy to do nowej listy.
Python3
string> => 'geeksforgeeks'> lst> => []> for> letter> in> string:> > lst.append(letter)> print> (lst)> |
Wyjście
['g', 'e', 'e', 'k', 's', 'f', 'o', 'r', 'g', 'e', 'e', 'k', 's']
Złożoność czasowa: O(n), gdzie n jest długością słowa wejściowego.
Przestrzeń pomocnicza: NA)
Python podzielony ciąg na liście przy użyciu rozumienia listy
To podejście wykorzystuje zrozumienie listy aby przekonwertować każdy znak na listę. Korzystając z poniższej składni, możesz podzielić znaki ciągu na listę.
Python3
string> => 'Geeksforgeeks'> letter> => [x> for> x> in> string]> print> (letter)> |
Wyjście
['G', 'e', 'e', 'k', 's', 'f', 'o', 'r', 'g', 'e', 'e', 'k', 's']
Złożoność czasowa: O(n), gdzie n jest długością słowa wejściowego.
Przestrzeń pomocnicza: NA)
Python Split String przy użyciu rzutowania typu list().
Python zapewnia bezpośrednie rzutowanie ciągów znaków na listę za pomocą Lista Pythona() .
Python3
def> split(word):> > return> list> (word)> > # Driver code> word> => 'geeks'> print> (split(word))> |
Wyjście
['g', 'e', 'e', 'k', 's']
Złożoność czasowa: O(n), gdzie n jest długością słowa wejściowego.
Przestrzeń pomocnicza: O(n), gdzie n jest długością słowa wejściowego.
Python Podziel ciąg znaków na liście za pomocą funkcji Extend().
Rozszerzyć() iteruje po wprowadzonych danych, rozwijając listę i dodając każdego członka.
Python3
string> => 'Geeks@for'> lst> => []> lst.extend(string)> print> (lst)> |
Wyjście
['G', 'e', 'e', 'k', 's', '@', 'f', 'o', 'r']
Złożoność czasowa: O(n), gdzie n jest długością łańcucha.
Przestrzeń pomocnicza: O(n), gdzie n jest długością łańcucha.
Podzielony ciąg Pythona u śpiewaj Itertools
W Pythonie możesz podzielić ciąg znaków na listę znaków za pomocą metody itertools moduł. Musisz przekonwertować ciąg na iterowalną sekwencję (np. listę, krotkę lub sam ciąg) pojedynczych znaków
Python3
import> itertools> string> => 'Geeksforgeeks'> letter> => list> (itertools.chain.from_iterable(string))> print> (letter)> |
Wyjście
['G', 'e', 'e', 'k', 's', 'f', 'o', 'r', 'g', 'e', 'e', 'k', 's']
Złożoność czasowa: O(n), gdzie n jest długością ciągu wejściowego.
Przestrzeń pomocnicza: O(n), ponieważ lista utworzona przez itertools.chain.from_iterable ma rozmiar n.
Ciąg podzielony w Pythonie na liście u śpiewaj List Slicing
W Pythonie możesz podzielić ciąg na listę znaków za pomocą krojenie listy . Dzielenie listy to technika umożliwiająca wyodrębnienie części listy (lub ciągu znaków) poprzez określenie indeksów początkowych i końcowych.
Pyton
string> => 'Geeks@for'> lst> => []> lst[:]> => string> print> (lst)> |
Wyjście
['G', 'e', 'e', 'k', 's', '@', 'f', 'o', 'r']
Złożoność czasowa: O(N), gdzie N jest długością ciągu wejściowego.
Przestrzeń pomocnicza: O(N), Ponieważ tworzona jest nowa lista o rozmiarze N.