Sobes.tech
Junior — Middle

Millised sammud on vajalikud oma iteratsioonimehhanismi rakendamiseks andmekogumi puhul

sobes.tech AI

Vastus AI-lt

Selleks, et rakendada oma iteratsioonimehhanism Pythonis kogumiku jaoks, peate määratlema iteratori objekti, mis rakendab meetodid __iter__() ja __next__().

Peamised sammud:

  1. Looge kogumi klass, mis rakendab meetodi __iter__(), mis tagastab iteratori.
  2. Looge iteratori klass, mis hoiab praeguse positsiooni olekut ja rakendab meetodi __next__(), mis tagastab järgmise elemendi või viskab StopIteration lõpus.

Näide:

class MinKogumik:
    def __init__(self, data):
        self.data = data

    def __iter__(self):
        return MinIteraator(self.data)

class MinIteraator:
    def __init__(self, data):
        self.data = data
        self.index = 0

    def __next__(self):
        if self.index < len(self.data):
            tulemus = self.data[self.index]
            self.index += 1
            return tulemus
        else:
            raise StopIteration

# Kasutamine
col = MinKogumik([1, 2, 3])
for item in col:
    print(item)

Sellisel viisil saate luua oma iteratori, mida saab kasutada for-tsüklites ja teistes konstruktsioonides, mis töötavad iteratoritega.