vendredi 16 septembre 2016

Python break from if statement to else

(I'm a Python newbie, so apologies for this basic question I for some reason couldn't find an answer to.)

I have a nested if statement with the if statement of an if/else block. In the nested if statement, if it it meets the criteria, I'd like the code to break to the else statement. When I put a break in the nested if, though, I'm not sure if it's breaking to the else statement.

I'd like to find the longest substring in alphabetical order of a given string, s. Here's my code:

s = 'lugabcdeczsswabcdefghij'
longest = 1
alpha_count = 1
longest_temp = 1
longest_end = 1
for i in range(len(s)-1):
    if (s[i] <= s[i+1]):
        alpha_count += 1
        if (i+1 == (len(s)-1)):
            break
    else:
        longest_check = alpha_count
        if longest_check > longest:
            longest = longest_check
            longest_end = i+1
        alpha_count = 1
print(longest)
print('Longest substring in alphabetical order is: ' + 
    s[(longest_end-longest):longest_end])

(Yes, I realize there's surely lots of unnecessary code here. Still learning!)

At this nested if:

if (i+1 == (len(s)-1)):
            break

...if True, I'd like the code to break to the 'else' statement. It doesn't seem to break to that section, though. Any help?

Aucun commentaire:

Enregistrer un commentaire