Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Learn Challenge: Iterating Over a Custom Range | Understanding Iterators
Quizzes & Challenges
Quizzes
Challenges
/
Efficient Data Handling in Python

bookChallenge: Iterating Over a Custom Range

Task

Swipe to start coding

In this task, you will create a class called OddRange that acts as an iterator to yield only odd numbers between a given start and stop value, mimicking the behavior of Python's built-in range but filtering for odd numbers only.

  • The class should implement the iterator protocol by defining both __iter__ and __next__ methods.
  • The __init__ method should accept start and stop parameters and store them as attributes.
  • The iterator should yield the next odd number greater than or equal to start and less than stop each time __next__ is called.
  • Once all odd numbers in the range have been yielded, the iterator should raise StopIteration.

Solution

Everything was clear?

How can we improve it?

Thanks for your feedback!

SectionΒ 1. ChapterΒ 5
single

single

Ask AI

expand

Ask AI

ChatGPT

Ask anything or try one of the suggested questions to begin our chat

Suggested prompts:

Can you explain this in simpler terms?

What are the main benefits or drawbacks?

Can you give me a real-world example?

close

bookChallenge: Iterating Over a Custom Range

Swipe to show menu

Task

Swipe to start coding

In this task, you will create a class called OddRange that acts as an iterator to yield only odd numbers between a given start and stop value, mimicking the behavior of Python's built-in range but filtering for odd numbers only.

  • The class should implement the iterator protocol by defining both __iter__ and __next__ methods.
  • The __init__ method should accept start and stop parameters and store them as attributes.
  • The iterator should yield the next odd number greater than or equal to start and less than stop each time __next__ is called.
  • Once all odd numbers in the range have been yielded, the iterator should raise StopIteration.

Solution

Switch to desktopSwitch to desktop for real-world practiceContinue from where you are using one of the options below
Everything was clear?

How can we improve it?

Thanks for your feedback!

SectionΒ 1. ChapterΒ 5
single

single

some-alt