Klammerung spielen viele verschiedene Rollen in Python das sind einige der wichtigsten Rollen, die sie spielen:
Funktionen
Wenn Sie deklarieren oder eine Funktion aufrufen Sie müssen immer die Klammern nach dem Funktionsnamen hinzuzufügen. Denken Sie an sie als einen Korb, um die Argumente hineinzubringen.Wenn Sie sie der Python-Interpreter vergessen werden denken, dass Sie eine Variable zum Beispiel anrufen:
list
Dies ist eine Variable mit dem Namen Liste ist und tut nichts Besonderes
list() #Empty basket
Dies jedoch ist ein Aufruf an eine Funktion, da es einen „Korb“ ist
Eckige Klammern
Eckige Klammern auch ziemlich viele haben Rollen:
Listen
In Python, verwenden Sie eckige Klammern, wenn Sie einen list anstelle eines Tupels erklären wollen.
Liste Verständnis
Liste Verständnis ist eigentlich ziemlich so read this um weitere Informationen zu kompliziert, aber nur wissen, dass es in eckige Klammern
Nachschlagen
Die hauptsächliche Verwendung von eckigen Klammern verwendet, ist um einen Wert in einer Liste, einem Tupel oder einem Wörterbuch nachzuschlagen. Stellen Sie sich das wie die Google-Suchleiste vor: Sie schreiben, was Sie wollen und es sagt Ihnen, was es hat. Zum Beispiel:
tuple = (2, 4)
wenn Sie 4 erhalten möchten, müssen Sie den zweiten Wert des Tupels sehen:
tuple[1] #The first value is 0
Slicing
Slicing ist einfach die Idee des Nehmens nur bestimmte Teile einer Liste (oder Tupel, Dictionary oder sogar String). Hier ist eine Erklärung von Greg Hewgill (https://stackoverflow.com/a/509295/7541446):
Es gibt auch den Schrittwert, der mit einer der oben genannten verwendet werden können:
a [Start: Ende: Schritt] # beginnen durch nicht letztes Ende, durch Schritt
Der wichtigste zu beachtende Punkt ist, dass der Endwert den ersten Wert darstellt, der nicht in der ausgewählten Schicht enthalten ist. Der Unterschied zwischen Ende und Start ist also die Anzahl der ausgewählten Elemente (wenn Schritt 1 ist, die Standardeinstellung). Das andere Merkmal ist, dass Anfang oder Ende eine negative Zahl sein kann, die bedeutet, dass es vom Ende des Arrays statt vom Anfang zählt. So :
a [-1] # letztes Element im Array a [-2:] # letzte beiden Elemente in dem Array a [: - 2] # alles außer den beiden letzten Punkten
Python ist freundlich zum Programmierer, wenn es weniger Elemente gibt als Sie fragen für.Wenn Sie beispielsweise nach einem [: - 2] und nur einem Element fragen, erhalten Sie eine leere Liste anstelle eines Fehlers. Manchmal bevorzugen Sie den Fehler, so müssen Sie sich bewusst sein, dass dies passieren kann.
Ich hoffe, dass dies nützliche Erkenntnisse zur Erklärung des Unterschieds zwischen Klammern und eckigen Klammern zur Verfügung gestellt hat.
Dies bedeutet, dass in Ihrer Frage len()
eine Funktion ist, wo Sie text
in den Warenkorb setzen. Allerdings, wenn Sie anrufen text[length-1]
Sie suchen, um den Wert an der Position length-1
Sie erhalten einen Fehler, weil eine Zeichenfolge minus eine Zahl nicht funktioniert –
Ihre Schleife ist auch etwas sinnlos. http://stackoverflow.com/questions/18686860/reverse-a-string-in-python-without-using-reversed-or-1 –
als eine Seite, wenn Sie die Umkehrung der Zeichenfolge möchten, können Sie nur umgekehrte Slicing verwenden : "mystring" [:: - 1] == "gnirtsym" –