I'm trying to figure out how to make python stop accepting input after a certain amount of time.
What I've got so far works, but won't stop the program until the user presses Enter. If it matters, I'm running this file in the Anaconda prompt.
#I've made everything short so it's simplerdef f(): try: if a != "Accepted word": timer.cancel print("...") quit() except NameError: #This makes the code run anyway since if the user inputs nothing #'a' will still be undefined and python will still be waiting for an input timer.cancel print("...") if a == "": quit() #Like I said, Python won't actually stop until an input is made else: #This runs fine if the user inputs the 'accepted word' timer.cancel print(...) quit()timer = threading.Timer(5.0, f)timer.start()a = input(">")
To put it in different words, I want to make something so that Python will stop waiting for an input. If the user inputs anything before the timer ends, the program runs fine, which is great, unless the player inputs nothing. If they don't even press Enter, then the whole process halts.(I'm also an absolute beginner in Python. In fact, just learning how to make a timer and use the time.sleep function took me a couple hours)(Which is also, by the way, the extent of my knowledge)