Time: 0:00
Test a custom input to verify an edge case (e.g. empty lists, negative numbers, duplicates).
This bug belongs to the null and undefined errors pattern
Cannot read properties of undefined, NoneType has no attribute, NaN appearing from nowhere.
What went wrong: with no match, next() has nothing to return, so it raises StopIteration.
The fix: return next((i for i in items if i == target), -1)
Remember: next() takes a second value to return when nothing is found.
The pattern behind it: null and undefined errors.
Paste this into any web page or blog post. Visitors fix the bug right there, in their browser.
<iframe src="https://trybughunt.com/embed/5d2011af-f10a-4386-afb0-2c9a8fffc608" title="Debugging challenge: First match crashes with StopIteration" width="100%" height="580" loading="lazy" style="border:1px solid #d4d4d8;border-radius:12px;max-width:760px"></iframe>
<p style="font-size:14px">Debugging challenge from <a href="https://trybughunt.com/challenges/5d2011af-f10a-4386-afb0-2c9a8fffc608">TryBugHunt</a></p>