I have this function that calls itself:
def get_input():
my_var = input('Enter "a" or "b": ')
if my_var != "a" and my_var != "b":
print('You didn\'t type "a" or "b". Try again.')
get_input()
else:
return my_var
print('got input:', get_input())
Now, if I input just "a" or "b", everything works fine:
Type "a" or "b": a
got input: a
But, if I type something else and then "a" or "b", I get this:
Type "a" or "b": purple
You didn't type "a" or "b". Try again.
Type "a" or "b": a
got input: None
I don't know why get_input()
is returning None
since it should only return my_var
. Where is this None
coming from and how do I fix my function?