fixed int array error in learntools SQL ex5 q3 #474
+2
−2
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The bug was in lines 100 and 101, where the code was trying to call
int()
on a single-element integer list, which returnedTypeError: int() argument must be a string, a bytes-like object or a real number, not 'IntegerArray'
. To fix this, all I did was replace theint()
function with accessing the first (and only) element with[0]
for both lines.I tested this with this code cell in the Kaggle learn notebook for this exercise, which is a modified version of the ex5.py file:
...and then this code cell, which ran the
q3_check()
function and did not return any assertion errors:I haven't considered if any checks are required if the resulting integer array ends up longer than a single element and that single element coincidentally is the correct number. It may be something to look into.