Is there a reason to be casting everything to str? print() can handle numbers just fine, and we should be returning a number to the caller, not a string.
I am having the exact same problems. Even though my code returns a value I still get a message saying, "first_three_multiples(5) returned None, expected 15."
I rewrote the code to just return the number 15. I converted it into a string, I converted it into an integer, but I still got the same result.
No matter what I do I can’t seem to clear this lesson. Does anybody have a solution that works?
The thing to do here is to go back to that return statement and be sure it doesn’t include a print. There should be a str value in the return. print will return None which will then be returned to the caller.