yxtiblin
@yxtiblin

Как пропустить итерацию цикла из вложенного цикла?

Есть цикл While и в нем вложенный цикл for с условием которое делает проверку и если что скипает итерацию, но continue в данном случае скипает итерацию цикла for, а нужно скипать итерацию while. Как такое можно сделать?
while True:
     for skipLink in skipList:
         if tgLink[i] == skipLink:
             continue
  • Вопрос задан
  • 298 просмотров
Решения вопроса 2
ramzis
@ramzis
FullStackOverflow
while True:
     for skipLink in skipList:
         if tgLink[i] == skipLink:
             break


while True:
     if tgLink[i] in skipList:
         continue
Ответ написан
Комментировать
seven5674
@seven5674
Старый я уже что бы что-то в себе менять
Вот эта конструкция
for skipLink in skipList:
         if tgLink[i] == skipLink:

легко заменяется на
if tgLink[i] in skipList:
или
if tgLink[i] not in skipList:
ну и собственно добавь сюда внешний цикл по i
и получишь результат... примерно такой
tgLink = [2, 5, 6]
skipList= [2]

for i in range(len(tgLink)):
    if tgLink[i] not in skipList:
        print(tgLink[i])

5
6
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Dzhigit
Начинающий прогер
Я думаю такое вряд ли получится, попробуйте перестроить программу таким образом, чтобы она выполняла ту же функцию, но другим способом.

К примеру так, но цикл будет бесконечным, так что поаккуратней с этим:
skipList = [1, 2, 3, 4]
tgLink = [1, 2, 3, 4]
i = 3

def check_continue(tgLink, i, skipList):
	for skipLink in skipList:
		if tgLink[i] == skipLink:
			return True

while True:
	if check_continue(tgLink, i, skipList):
		continue
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы