Шаг 153.
Основы языка Python.
Итераторы, контейнеры и перечисления (общие сведения)

    На этом шаге мы приведем общие сведения об этих классах.

    Язык Python поддерживает средства для создания классов особого назначения: итераторов, контейнеров и перечислений.

    Итераторы - это классы, генерирующие последовательности каких-либо значений. Такие классы мы можем задействовать, например, в циклах for:

class MyIterator:    # Определяем класс-итератор
.   .   .   .   .   .
it = MyIterator()    # Создаем его экземпляр
for v in it:         # и используем в цикле for

    Контейнеры - классы, которые могут выступать как последовательности (списки или кортежи) или отображения (словари). Мы можем обратиться к любому элементу экземпляра такого класса через его индекс или ключ:

class MyList:          #  Определяем класс-список
.   .   .   .   .   .
class MyDict:          # Определяем класс-словарь
.   .   .   .   .   .
lst, dct  = MyList(),  MyDict()     # Используем их
lst[0] = 1
dct ["first"] = 578

    Перечисления - особые классы, представляющие наборы каких-либо именованных величин, В этом смысле они аналогичны подобным типам данных, доступным в других языках программирования, - например, в С:

from enum import  Enum       # Импортируем базовый класс Enum
class Versions(Enum):        # Определяем класс-перечисление
    Python2.7  =  "2.7"
    Python3.4  =  "3.4"
                             # Используем его
if python_version == Versions.Python3.4:
    .   .   .   .   .   .

    Поддержка перечислений появилась в Python 3.4.

    На следующем шаге мы рассмотрим итераторы.




Предыдущий шаг Содержание Следующий шаг