Heim > Backend-Entwicklung > Python-Tutorial > Python – Indizierung und Slicing

Python – Indizierung und Slicing

王林
Freigeben: 2024-07-25 09:15:42
Original
327 Leute haben es durchsucht

Python - Indexing and Slicing

Indizierung und Slicing ist ein wichtiges Konzept in Python, insbesondere wenn wir Strings verwenden.

Indizierung:

WKT, String ist nichts anderes als eine Folge von Zeichen.
Jedes Zeichen hat also eine Position, nämlich Index, und der Zugriff auf seine Position in dieser bestimmten Zeichenfolge wird als Indexierung bezeichnet.

In Python haben wir eine auf Null basierende Indizierung, d. h. das erste Zeichen einer Zeichenfolge hat einen Index(position) von 0 statt nur einen, dann hat das zweite Zeichen einen Index(position) von 1 und so weiter.

Zum Beispiel

>     H E L L O W O R L D
>     0 1 2 3 4 5 6 7 8 9
Nach dem Login kopieren

Dies wird als positive Indizierung bezeichnet, da wir nur positive Zahlen zur Referenzierung der Indizes verwendet haben.

Sie fragen sich vielleicht: „Dann haben wir auch eine negative Indizierung??“
Ofc, aber hier haben wir nicht Null als erste Position, da es keine negative Zahl ist.

Negative Indizierung ermöglicht uns den Zugriff auf Zeichen vom Ende der Zeichenfolge, d. h. das letzte Zeichen hat einen Index von -1, das vorletzte Zeichen hat einen Index von -2 usw.

>      H  E  L  L  O  W  O  R  L  D
>    -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
Nach dem Login kopieren
word = "HELLOWORLD"

print(word[0])
print(word[5])

H
W

Nach dem Login kopieren

Ebenso

print(word[-1])
print(word[-6])

D
0
Nach dem Login kopieren

Das ist es mit der Indizierung.


Schneiden:

Stellen Sie sich das Durchschneiden einer Schnur so vor, als würden Sie ein Stück Kuchen von einem ganzen Kuchen abschneiden. Wir können angeben, wo mit dem Schneiden begonnen werden soll (Index), wo enden soll (Endindex) und sogar wie groß jedes Stück sein soll (Schritt). Auf diese Weise können wir kleinere Portionen des Kuchens (oder der Schnur) genau so gestalten, wie wir sie mögen!

In Python können wir durch das Schneiden eines Strings bestimmte Teile davon erfassen, indem wir angeben, wo innerhalb des Strings begonnen und enden soll.
Wenn die Nachricht beispielsweise „HELLOWORLD“ enthält, erhalten Sie bei Nachricht[3:7] „LOWO“, da sie bei Index 3 ('L') beginnt und kurz vor Index 7 ('D') endet. Auf diese Weise können wir jeden Teil einer Zeichenfolge extrahieren, den wir benötigen!

- Die grundlegende Syntax für das Slicing ist:

string[start:stop]
Nach dem Login kopieren
  • Der Startindex ist der Ort, an dem das Slice beginnt, und dieser Index ist inklusive.
  • Der Stoppindex ist dort, wo das Slice endet, aber dieser Index ist exklusiv, was bedeutet, dass das Zeichen an diesem Index nicht im Slice enthalten ist.
text = "HappyBirthday"

print(text[0:5])  
print(text[5:13])

Happy
Birthday  
Nach dem Login kopieren

Beim Schneiden einer Zeichenfolge in Python können wir einfach den Start- oder Stoppindex weglassen, um vom Anfang oder bis zum Ende der Zeichenfolge zu schneiden.
So einfach ist das!

- Schneiden mit einem Schritt,

Um das Intervall zwischen Zeichen beim Schneiden einer Zeichenfolge in Python anzugeben, fügen Sie einfach einen Doppelpunkt gefolgt vom Schrittwert hinzu:

string[start:stop:step]
Nach dem Login kopieren

Damit können wir steuern, wie wir beim Erstellen eines Slice die Zeichen der Zeichenfolge überspringen möchten.

message = "HELLOWORLD"
print(message[1::2])    

EORL
Nach dem Login kopieren

message[1::2] beginnt mit dem Slicing von Index 1 ('E') bis zum Ende der Zeichenfolge, in Schritten von 2.
Daher enthält es Zeichen an den Indizes 1, 3, 5 und 7, was uns „EORL“ ergibt.

Bis wir etwas über positives Slicing gesehen haben, lernen wir nun etwas über negatives Slicing.

- Negatives Schneiden:

  • Ein negativer Schritt ermöglicht es Ihnen, die Zeichenfolge in umgekehrter Reihenfolge zu zerschneiden.
  • Lassen Sie uns in umgekehrter Reihenfolge vom vorletzten Zeichen zum dritten Zeichen aufschneiden
message = "HELLOWORLD"
print(message[-2:2:-1])

ROWOL
Nach dem Login kopieren

Lassen Sie uns bestimmte Fragen untersuchen.

#Schreiben Sie eine Funktion, die eine Zeichenfolge entgegennimmt und eine neue Zeichenfolge zurückgibt, die aus ihrem ersten und letzten Zeichen besteht.

word = "Python"
end = word[0]+word[5]
print(end)

Pn
Nach dem Login kopieren

#Schreiben Sie eine Funktion, die eine bestimmte Zeichenfolge umkehrt.

word = "Python"
print(word[::-1])

nohtyP
Nach dem Login kopieren

#Gegeben eine Zeichenfolge, extrahieren Sie eine Teilzeichenfolge vom 3. bis zum 8. Zeichen (einschließlich) und geben Sie sie zurück.

text = "MichaelJackson"
print(text[3:9])

haelJa
Nach dem Login kopieren

#Geben Sie eine E-Mail-Adresse an, extrahieren Sie die Domain und geben Sie sie zurück.

email = "hello_world@gmail.com"
domain = email[:-10]
print(domain)

hello_world
Nach dem Login kopieren

#Schreiben Sie eine Funktion, die jedes dritte Zeichen einer bestimmten Zeichenfolge zurückgibt.

text = "Programming"
print(text[::3])

Pgmn
Nach dem Login kopieren

#Schreiben Sie eine Funktion, die jedes zweite Zeichen überspringt und dann die resultierende Zeichenfolge umkehrt.

text1 = "Programming"
print(text1[::-2])

gimroP
Nach dem Login kopieren

#Schreiben Sie eine Funktion, die Zeichen mit geraden Indizes aus einer bestimmten Zeichenfolge extrahiert und zurückgibt.

text = "Programming"
print(text[::2])

Pormig
Nach dem Login kopieren

Okay, das ist das Grundlegende hier.

.....

Das obige ist der detaillierte Inhalt vonPython – Indizierung und Slicing. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage