Если я в корне не понимаю, как работают генераторы Python, это невозможно, и вы должны вернуться в своем методе создания вместо генератора.
def create(n):
items = ["a", "b", "c"]
return [items[random.randint(0,2)] for i in range(n)]
Приведенное выше понимание списка скорее создаст списокчем использовать генератор.Для лучшего понимания генераторов я бы предложил прочитать этот превосходный пост .
РЕДАКТИРОВАТЬ: Из любопытства я рассчитал метод списка (create (n)), предложенный Tomothy32, против моего, которыйвозвращает список.Как и ожидалось, чуть медленнее вернуть генератор, а затем сохранить список с помощью понимания (в среднем 130 микросекунд против 125 микросекунд).Однако вы можете предпочесть оставить исходный метод без изменений и иметь простую возможность сохранять определенные вызовы генератора в виде списков, а не переопределять его и всегда возвращать объект списка.