Rezanje nizov v Pythonu

Rezanje nizov v Pythonu

Pri rezanju v Pythonu gre za pridobivanje podniza iz podanega niza tako, da ga razrežete od začetka do konca.

Kako deluje rezanje nizov v Pythonu

Za razumevanje rezanja uporabili bomo različne metode, tukaj bomo obravnavali 2 metodi rezanja nizov, eno z uporabo vgrajene metode slice() in drugo z uporabo [:] rezina niza . Pri rezanju nizov v Pythonu gre za pridobivanje podniza iz danega niza tako, da ga razrežete od začetka do konca.

Rezanje Pythona je mogoče izvesti na dva načina:

  • Uporaba metode slice().
  • Uporaba metode rezanja matrike [::].

Sledilnik indeksa za pozitivni in negativni indeks: Indeksiranje in rezanje nizov v pythonu. Tukaj negativ pride v poštev pri sledenju nizu v obratni smeri.

python-string-slice

1. način: uporaba metode slice().

Konstruktor slice() ustvari objekt rezine, ki predstavlja niz indeksov, določenih z obsegom (start, stop, step).

Sintaksa:

  • rezina (ustavitev)
  • rezina (začetek, ustavitev, korak)

Parametri: začetek: Začetni indeks, kjer se začne rezanje predmeta. stop: Končni indeks, kjer se rezanje predmeta ustavi. korak: To je izbirni argument, ki določa prirast med posameznimi indeksi za rezanje. Vrsta vračila: Vrne razrezan predmet, ki vsebuje samo elemente v danem obsegu.

primer:

Python3




# Python program to demonstrate> # string slicing> # String slicing> String> => 'ASTRING'> # Using slice constructor> s1> => slice> (> 3> )> s2> => slice> (> 1> ,> 5> ,> 2> )> s3> => slice> (> -> 1> ,> -> 12> ,> -> 2> )> print> (> 'String slicing'> )> print> (String[s1])> print> (String[s2])> print> (String[s3])>

Izhod:

String slicing AST SR GITA 

2. način: Uporaba metode razrezovanja seznama/matrike [ :: ].

V Pythonu se sintaksa indeksiranja lahko uporablja kot nadomestek za objekt rezine. To je enostaven in priročen način za rezanje vrvice z uporabo rezanje seznama in rezanje matrike tako glede sintakse kot glede izvajanja. Začetek, konec in korak imajo enak mehanizem kot konstruktor slice().

Spodaj bomo videli rezanje nizov v Pythonu s primeri.

Sintaksa

arr[start:stop] # items start through stop-1 arr[start:] # items start through the rest of the array arr[:stop] # items from the beginning through stop-1 arr[:] # a copy of the whole array arr[start:stop:step] # start through not past stop, by step 

Primer 1:

V tem primeru bomo videli rezanje na seznamu python indeks se začne z indeksi 0 in konča z indeksom 2 (ustavi se pri 3-1=2).

Python3




# Python program to demonstrate> # string slicing> # String slicing> String> => 'GEEKSFORGEEKS'> # Using indexing sequence> print> (String[:> 3> ])>

Izhod:

GEE 

Primer 2:

V tem primeru bomo videli primer začetka z indeksom 1 in konca z indeksom 5 (ustavi se pri 3-1=2), korak preskoka pa je 2. To je dober primer Python rezanje nizov po znakih.

Python3




# Python program to demonstrate> # string slicing> # String slicing> String> => 'GEEKSFORGEEKS'> # Using indexing sequence> print> (String[> 1> :> 5> :> 2> ])>

Izhod:

 EK 

Primer 3:

V tem primeru bomo videli primer začetka z indeksi -1 in konca z indeksom -12 (ustavi se pri 3-1=2), korak preskoka pa je -2.

Python3




# Python program to demonstrate> # string slicing> # String slicing> String> => 'GEEKSFORGEEKS'> # Using indexing sequence> print> (String[> -> 1> :> -> 12> :> -> 2> ])>

Izhod:

SEGOSE 

Primer 4:

V tem primeru je celoten niz natisnjen v obratnem vrstnem redu.

Python3




# Python program to demonstrate> # string slicing> # String slicing> String> => 'GEEKSFORGEEKS'> # Prints string in reverse> print> (String[::> -> 1> ])>

Izhod:

SKEEGROFSKEEG 

Opomba: Če želite izvedeti več o nizih, kliknite tukaj.

Uporaba islice()
Islice() je vgrajena funkcija, definirana v modulu itertools. Uporablja se za pridobitev iteratorja, ki je rez na podlagi indeksa katerega koli iterable. Deluje kot standardna rezina, vendar vrne iterator.

Sintaksa:

itertools.islice(iterable, start, stop[, step])
Parametri: iterable: Vsako iterable zaporedje, kot je seznam, niz, tuple itd. start: Začetni indeks, od koder se začne rezanje iterable. stop: Končni indeks, od koder se konča rezanje iterable. korak: neobvezen argument. Določa vrzel med posameznimi indeksi za rezanje. Vrsta vrnitve: vrne iterator iz podanega ponovljivega zaporedja.

primer:

Python3




# Python program to demonstrate> # islice()> > import> itertools> > # Using islice()> String> => 'GEEKSFORGEEKS'> > # prints characters from 3 to 7 skipping one character.> print> (''.join(itertools.islice(String,> 3> ,> 7> )))> #This code is contributed by Edula Vinay Kumar Reddy>

Izhod

KSFO