В чанкинг-листе выводится «порция объекта генератора в 0x05DAF8D0» вместо списка - PullRequest
0 голосов
/ 26 апреля 2018

Я использовал этот код раньше, и он был в порядке, но почему-то теперь он печатает «[chunks объекта генератора в 0x05DAF8D0]» вместо печати списка в чанках. Я не знаю, к чему я прикоснулся, чтобы код потерпел неудачу.

 fruit = ['apple', 'pear', 'banana']

 def chunks(l, n):
     for i in range(0, len(l), n):
         yield l[i:i+n]

 list_of_lists = [(chunks(fruit, 2))]

 print(list_of_lists)

1 Ответ

0 голосов
/ 26 апреля 2018

Ваш print() вызов распечатывает генератор. Но вы хотите увидеть, что генерирует генератор. И генератор является первым элементом другого списка. Сделайте это, чтобы увидеть, что в нем.

print (list(list_of_lists[0]))

Но учтите, что итерация по генератору использует его. Поэтому не ожидайте, что содержимое все еще будет там после вызова print().

...