Ich möchte Code wie folgt schreiben:
%Vor%aber das funktioniert nicht.
Gibt es eine Möglichkeit, alle Teile der [...:...]
-Syntax in einer Variablen zu speichern?
Sie möchten ein slice()
-Objekt :
slice()
modelliert die Werte für Start, Stopp und Schritt, die Sie in der Subsyntax [start:stop:stride]
als Objekt angeben können.
Aus der Dokumentation:
Geben Sie ein Objekt slice zurück, das die durch
range(start, stop, step)
angegebene Gruppe von Indizes darstellt. Die Start- und Schrittargumente werden standardmäßig aufNone
gesetzt. Slice-Objekte haben schreibgeschützte Datenattributestart
,stop
undstep
, die lediglich die Argumentwerte (oder deren Standardwerte) zurückgeben.
Unter dem Deckmantel übersetzt Python Subskriptionen tatsächlich in ein slice()
-Objekt beim Aufruf von benutzerdefinierten __getitem__
Methoden:
Eine praktikable Alternative wäre, Start und Stopp als separate Werte zu speichern:
%Vor% Sie können stattdessen ein slice
Objekt erstellen:
Achten Sie darauf, nicht list
als Namen zu verwenden, um eine Verschattung der eingebauten Funktion list
zu vermeiden.
Aus der Dokumentation:
slice(start, stop[, step])
Gibt ein Segmentobjekt zurück, das die Menge der durch angegebenen Indizes repräsentiert
range(start, stop, step)
Tags und Links python list variables python-3.x