Catch, add context, re-raise in Python
Python interview exercise on Errors & Context Managers, difficulty 2 of 3. Solve it in the editor beside a worked example, or cold in Interview mode with the example hidden; the tests run the moment you do.
Write parse_all(items) that converts every string to an int. On the first bad item raise ValueError with a message that says where: "item 1: 'x' is not an integer" (zero-based index, the text shown with repr).
Each exercise pairs a worked example with a twin problem to solve in a real editor; the tests run the moment you do. Interview mode hides the example: solve it from memory, without the hint or the solution, and it counts as solved cold. Progress is saved in your browser, and in your account if you sign in.