Jak podzielić ciąg w Pythonie (ograniczniki i Maxsplit)

Dowiedz się, jak podzielić ciąg znaków na listę w Pythonie za pomocą metody split(). Poznaj dzielenie według spacji, przecinków, znaków nowej linii i ograniczanie liczby podziałów.

Wypróbuj to rozwiązanie w Edytorze

Przegląd

Dzielenie ciągów znaków jest jedną z najczęstszych operacji przetwarzania tekstu. Niezależnie od tego, czy analizujesz plik CSV, dzielisz dzienniki, przetwarzasz dane wejściowe użytkownika, czy wyodrębniasz słowa z dokumentu, wbudowane metody łańcuchowe Pythona sprawiają, że to zadanie jest banalne. Kluczową metodą jest `.split()`, która dzieli ciąg na listę podciągów.

Domyślnie wywołanie `split()` bez żadnych argumentów dzieli ciąg znaków przez dowolne białe znaki (spacje, tabulatory, znaki nowej linii) i odrzuca kolejne białe znaki. Jeśli chcesz podzielić ciąg znaków na partycje na podstawie określonego znaku, np. przecinka w danych CSV, przekazujesz ten znak jako separator (np. `text.split(",")`).

Metoda `split()` akceptuje także drugi opcjonalny parametr o nazwie `maxsplit`. Określa to maksymalną liczbę podziałów, które należy wykonać. Pozostała część ciągu jest zwracana jako ostatni element listy, co jest bardzo przydatne, gdy chcesz przeanalizować tylko kilka pierwszych tokenów polecenia lub komunikatu.

Dane wyjściowe kodu i wykonania

Ten skrypt demonstruje dzielenie ciągów przy użyciu domyślnych ograniczników, niestandardowych ograniczników i ograniczanie podziałów przy użyciu maxsplit.

split_string.py
Spróbuj w Edytorze
sentence = "Python is fun to learn"
csv_data = "apple,banana,orange,grape"

# 1. Split by whitespace (default)
words = sentence.split()
print("Whitespace split:", words)

# 2. Split by comma separator
fruits = csv_data.split(",")
print("Comma split:", fruits)

# 3. Using maxsplit parameter
limited_split = csv_data.split(",", maxsplit=2)
print("Maxsplit of 2:", limited_split)
Wyjście terminala
Whitespace split: ['Python', 'is', 'fun', 'to', 'learn']
Comma split: ['apple', 'banana', 'orange', 'grape']
Maxsplit of 2: ['apple', 'banana', 'orange,grape']

Wdrażanie krok po kroku

  • Wywołaj metodę .split() na zmiennej łańcuchowej.
  • Przekaż ciąg separatora, taki jak „”, lub „\n”, aby podzielić go za pomocą niestandardowego ogranicznika.
  • Użyj argumentu maxsplit, aby zatrzymać dzielenie po określonej liczbie elementów.

Często zadawane pytania

W jaki sposób funkcja split() obsługuje kolejne spacje?

Domyślnie (bez argumentów) kolejne spacje są traktowane jako pojedynczy separator. Jeśli jednak przekażesz „”, kolejne spacje spowodują utworzenie pustych ciągów na liście wyjściowej.

Jak podzielić ciąg znaków na wiele różnych ograniczników?

Aby podzielić za pomocą wielu ograniczników (takich jak przecinki, spacje i średniki), użyj wyrażeń regularnych za pomocą funkcji re.split().

Powiązane tematy

Polecane zasoby Pythona

Poszerzaj swoją wiedzę dzięki powiązanym interaktywnym samouczkom, ściągawkom i porównaniom kodów.