Python Slice ()

Die Slice () -Funktion gibt ein Slice-Objekt zurück, mit dem Zeichenfolgen, Listen, Tupel usw. geschnitten werden können.

Das Slice-Objekt wird verwendet, um eine bestimmte Sequenz (String, Bytes, Tupel, Liste oder Bereich) oder ein beliebiges Objekt, das das Sequenzprotokoll unterstützt (Implementierungen __getitem__()und __len__()Methode) , zu schneiden .

Die Syntax von slice()lautet:

 Scheibe (Start, Stopp, Schritt)

Slice () -Parameter

slice() kann drei Parameter annehmen:

  • start (optional) - Start der Ganzzahl, an der das Schneiden des Objekts beginnt. Standard, Nonefalls nicht angegeben.
  • stop - Ganzzahl, bis zu der das Schneiden erfolgt. Das Schneiden stoppt bei Indexstopp -1 (letztes Element) .
  • Schritt (optional) - Ganzzahliger Wert, der das Inkrement zwischen den einzelnen Indizes für das Schneiden bestimmt. Der Standardwert ist, Nonewenn nicht angegeben.

Beispiel 1: Erstellen Sie ein Slice-Objekt zum Schneiden

 # contains indices (0, 1, 2) result1 = slice(3) print(result1) # contains indices (1, 3) result2 = slice(1, 5, 2) print(slice(1, 5, 2))

Ausgabe

 Scheibe (Keine, 3, Keine) Scheibe (1, 5, 2) 

Hier result1und result2sind Slice-Objekte.

Jetzt kennen wir uns mit Slice-Objekten aus. Lassen Sie uns sehen, wie wir aus Slice-Objekten Teilzeichenfolgen, Unterlisten, Unter-Tupel usw. erhalten können.

Beispiel 2: Holen Sie sich den Teilstring mit dem Slice-Objekt

 # Program to get a substring from the given string py_string = 'Python' # stop = 3 # contains 0, 1 and 2 indices slice_object = slice(3) print(py_string(slice_object)) # Pyt # start = 1, stop = 6, step = 2 # contains 1, 3 and 5 indices slice_object = slice(1, 6, 2) print(py_string(slice_object)) # yhn

Ausgabe

 Pyt yhn 

Beispiel 3: Teilzeichenfolge mit negativem Index abrufen

 py_string = 'Python' # start = -1, stop = -4, step = -1 # contains indices -1, -2 and -3 slice_object = slice(-1, -4, -1) print(py_string(slice_object)) # noh

Ausgabe

 nein 

Beispiel 4: Unterliste und Untertupel abrufen

 py_list = ('P', 'y', 't', 'h', 'o', 'n') py_tuple = ('P', 'y', 't', 'h', 'o', 'n') # contains indices 0, 1 and 2 slice_object = slice(3) print(py_list(slice_object)) # ('P', 'y', 't') # contains indices 1 and 3 slice_object = slice(1, 5, 2) print(py_tuple(slice_object)) # ('y', 'h') 

Ausgabe

 ('P', 'y', 't') ('y', 'h') 

Beispiel 5: Unterliste und Untertupel mit negativem Index abrufen

 py_list = ('P', 'y', 't', 'h', 'o', 'n') py_tuple = ('P', 'y', 't', 'h', 'o', 'n') # contains indices -1, -2 and -3 slice_object = slice(-1, -4, -1) print(py_list(slice_object)) # ('n', 'o', 'h') # contains indices -1 and -3 slice_object = slice(-1, -5, -2) print(py_tuple(slice_object)) # ('n', 'h')

Ausgabe

 ('n', 'o', 'h') ('n', 'h') 

Beispiel 6: Verwenden der Indizierungssyntax zum Schneiden

Das Slice-Objekt kann in Python durch die Indizierungssyntax ersetzt werden.

Sie können alternativ die folgende Syntax zum Schneiden verwenden:

 obj (start: stop: step)

Beispielsweise,

 py_string = 'Python' # contains indices 0, 1 and 2 print(py_string(0:3)) # Pyt # contains indices 1 and 3 print(py_string(1:5:2)) # yh

Ausgabe

 Pyt yh 

Interessante Beiträge...