как изменить условия цикла while, находящегося в repeat_list , таким образом, чтобы массив обходился только два раза?

Рейтинг: 0Ответов: 2Опубликовано: 26.02.2023
def repeat_list(list_):
   list_values = list_.copy()
   while True:
       value = list_values.pop(0)
       list_values.append(value)
       yield value

for i in repeat_list([1, 2, 3]):
   print(i)

Ответы

▲ 0

вот решение:

def repeat_list(list_):  
 list_values = list_.copy()
 n = 0   while n < len(list_values) * 2:
 n += 1  value = list_values.pop(0)
 list_values.append(value)                 
    yield value
 for i in repeat_list([1, 2, 3]):
  print(i)
▲ 0

tio.run

def repeat_list(lst):
  lst = lst.copy()

  for _ in range(2):
    for x in lst:
      yield x

for i in repeat_list([1, 2, 3]):
  print(i)