Skip to main content
Python Software Foundation 20th Year Anniversary Fundraiser  Donate today!

enumerate extended to support manual advancement or skipping of the index

Project description

This package provides 2 iterators, enumerate_skip and enumerate_manual, that extend the behaviour of the standard libraries enumerate a bit.

enumerate_skip has been extended with a skip method that makes sure the next index yielded is the same as the current one. The word skip might not make sense at first, but this function was written because I needed to not handle some values yielded by an iterator, like:

for index, obj in enumerate(...):
    if obj.has_some_attr():
        continue
    # do something with object and index here

If index in that example was printed to the user (or something similar), there would be gaps. Using enumerate_skip instead, the above example could be written as:

it = enumerate_skip(...)
for index, obj in it:
    if obj.has_some_attr():
        it.skip()
        continue
    # do something with object and index here

enumerate_manual works the other way around: you have to manually call advance on it to increment the index:

it = enumerate_manual(...)
for index, obj in it:
    if obj.has_some_attr():
        continue
    # do something with object and index here
    it.advance()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for enumerate_skip, version 1.0
Filename, size File type Python version Upload date Hashes
Filename, size enumerate_skip-1.0-py2.py3-none-any.whl (4.8 kB) File type Wheel Python version 2.7 Upload date Hashes View
Filename, size enumerate_skip-1.0.tar.gz (3.7 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page