Я пытаюсь написать код, который получает список и генерирует все эти преобразования, используя оператор yield.
Проблема в том, что когда я хочу получить новый ввод в генератор с помощью функции отправки, я продолжаю получать старый ввод.
def permute(items):
permutations = [x for x in itertools.permutations(items)]
permutations.sort()
for n in permutations:
yield (n)
g = permute(['b','a','c'])
print(next(g)) #('a', 'b', 'c')
print(next(g)) #('a', 'c', 'b')
g.send(['e','q','c'])
print(next(g)) #('b', 'c', 'a') need to be ('c', 'e', 'q')
Как очистить список перестановок и повторить шаг сортировки списка перестановок без создания нового генератора?