Ich habe versucht, ein Programm zu schreiben, das die längste Teilzeichenfolge in alphabetischer Reihenfolge in einer Zeichenfolge ausgibt. Hier ist mein Code:Indexfehler: Zeichenfolgenindex außerhalb des Bereichs python
s = 'azcbobobegghakl'
n = 0
longest = "a"
while n < len(s):
x = n
for i in s:
if s[x + 1] >= s[x]:
x += 1
else:
break
sub_string = (s[n:x+1])
if len(sub_string) > len(longest):
longest = sub_string
n += 1
print ("Longest String in alphabetischer Reihenfolge ist:" + längsten)
Weil ich 'x' bei jeder Iteration und als Ergebnis erhöht wird, wird der Index bald gerät außer Reichweite. Ich frage mich nur, ob es einen Weg gibt, wie ich das umgehen könnte. Danke.
Ich sehe einige gebrochene Einrückung. –
Gebrochene Einrückung, Sie erhöhen nie den Wert von n, es wird eine Endlosschleife sein, es sei denn, es trifft Ihre break-Anweisung – AK47
Danke. Verpasste die Einrückung beim Formatieren des Codes hier. Aber das löst mein Problem noch nicht. Trotzdem danke. – Tpenny