I query user input which is expected to be an int by using int(raw_input(...))
However when the user doesn\'t enter an integer, i.e. just hits return, I get a ValueError
Instead of calling inputValue recursively, you need to replace raw_input with your own function with validation and retry. Something like this:
inputValue
raw_input
def user_int(msg): try: return int(raw_input(msg)) except ValueError: return user_int("Entered value is invalid, please try again")