Gibt es eine Möglichkeit, eine Zeichenfolge in Python zu unterzeichnen, um eine neue Zeichenfolge vom 3. Zeichen bis zum Ende der Zeichenfolge abzurufen?
Vielleicht wie myString[2:end]
?
Ja, dies funktioniert tatsächlich, wenn Sie den Namen einem konstanten Singleton zuweisen oder binden :end
None
>>> end = None
>>> myString = '1234567890'
>>> myString[2:end]
'34567890'
Die Slice-Notation hat 3 wichtige Argumente:
Ihre Standardeinstellungen sind, wenn sie nicht angegeben sind None
- aber wir können sie explizit übergeben:
>>> stop = step = None
>>> start = 2
>>> myString[start:stop:step]
'34567890'
Wenn das Verlassen des zweiten Teils "bis zum Ende" bedeutet, wenn Sie den ersten Teil verlassen, beginnt er von vorne?
Ja zum Beispiel:
>>> start = None
>>> stop = 2
>>> myString[start:stop:step]
'12'
Beachten Sie, dass wir Start in das Slice aufnehmen, aber nur bis zum Stopp und nicht bis zum Stopp.
Wenn Schritt ist None
, wird standardmäßig das Slice 1
für den Schritt verwendet. Wenn Sie mit einer negativen Ganzzahl arbeiten, ist Python intelligent genug, um vom Ende zum Anfang zu gelangen.
>>> myString[::-1]
'0987654321'
Ich erkläre die Slice-Notation in meiner Antwort auf die Frage zur Erläuterung der Slice-Notation ausführlich .