Python обрабатывает итерабельные и неитерабельные типы данных следующим образом:
- Итерабельные типы. 3 К ним относятся встроенные типы контейнеров, такие как списки, кортежи, словари и наборы. 3 Они предоставляют поток данных, который можно итерировать. 3
- Неитерабельные типы. 2 Для обработки таких объектов в Python можно определить протокол итератора для пользовательских объектов или преобразовать объект в итерабельный тип, например, список или кортеж. 2
Например, для обработки неитерабельных объектов можно определить метод .iter() для пользовательских объектов и при вызове этого метода возвращать итератор, который будет выдавать по одному элементу за раз. 23