(Я Python новичку, поэтому приносим извинения за этот основной вопрос, который я по какой-то причине не смог найти ответ на.)Python перерыв, если заявление еще
У меня есть вложенное, если заявление с, если утверждение блока if/else. В вложенный оператор if, если он соответствует критериям, я хотел бы, чтобы код разбился на инструкцию else. Когда я помещаю перерыв в вложенном if, хотя, я не уверен, что он нарушает оператор else.
Я хотел бы найти самую длинную подстроку в алфавитном порядке данной строки, s. Вот мой код:
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])
(.! Да, я понимаю, что это, конечно, много ненужного кода здесь все еще учится)
При этом вложенная если:
if (i+1 == (len(s)-1)):
break
... если это правда, Я хотел бы, чтобы код перешел к выражению «else». Тем не менее, похоже, что он не работает в этом разделе. Любая помощь?
break используется в операторах цикла. Я думаю, вы хотите использовать флаги. –
Операция 'break' используется только для прерывания while и для циклов: см. Https://docs.python.org/3/reference/simple_stmts.html#break Что вы хотите? Способ пойти в блок else, если вы столкнулись с вашим текущим перерывом? –
@ XavierC.Да, это именно то, что я хочу. Если я столкнулся с текущим перерывом, я бы хотел пойти в блок else, который я написал. – Jim