2017-03-16 2 views
0

Also arbeite ich gerade daran und versuche wirklich, jeden Schritt auf diesem Weg tief zu verstehen! Derzeit weiß ich, dass in Zeile 3, dass es geändert wird auf „Bungo Batgins“ aber auf der Linie 6 Ich bin mir nicht sicher, warum die/wie das Wort ändert sich auf „Batgins, Bungo“. Ich verstehe, dass es den Raum findet, der Index 5 ist, und fügt dann Index 6 hinzu, um das Komma hinzuzufügen. Ich verstehe nicht ganz, warum die zwei Wörter umdrehen? Wenn jemand erklären könnte, warum die beiden Wörter einander einnehmen, wäre das großartig! Vielen Dank!Python-Code mit Slicing verstehen

word = "Bungo Baggins" 
idx = word.find('gg') 
word = word[ : idx] + 't' + word[idx + 1 : ] 
idx = word.find(' ') 
print(idx) 
word = word[idx + 1 : ] + ", " + word[ : idx] 
print(word) 
+0

Im zweiten 'Wort = ...' Erklärung werden die Slicing Teile getauscht. .. –

+0

So Wort tut [idx + 1:] ist einschließlich Batgins nur? – ProFesh

+0

In der Tat. Du teilst den Raum auf. Und 'word [idx + 1:]' enthält das Slicen beginnend mit dem Zeichen ** next ** dieses Raumes ... –

Antwort

1

In der Zeile word = word[idx + 1 : ] + ", " + word[ : idx] übersetzt die rechte Seite zu:

word[idx + 1 : ]: jedes Element word nehmen, bei idx+1 bis zum Ende

word[ : idx] beginnend: Nehmen jedes Elements word beim Starten der Anfang und das Ende bei idx.

Wesentlichen einen fehlenden Index in [a:b] übersetzt zum Extremalindex in diese Richtung: [:idx] ist wirklich [0:idx] während [idx:] wirklich [idx:end]