Если вы работаете в Unix / Linux, вам поможет модуль select .
import sys
from select import select
print "Press any key to configure or wait 5 seconds..."
timeout = 5
rlist, wlist, xlist = select([sys.stdin], [], [], timeout)
if rlist:
print "Config selected..."
else:
print "Timed out..."
Если вы работаете в Windows, посмотрите на модуль msvcrt . (Обратите внимание, что это не работает в IDLE, но будет в командной строке cmd)
import sys, time, msvcrt
timeout = 5
startTime = time.time()
inp = None
print "Press any key to configure or wait 5 seconds... "
while True:
if msvcrt.kbhit():
inp = msvcrt.getch()
break
elif time.time() - startTime > timeout:
break
if inp:
print "Config selected..."
else:
print "Timed out..."
Редактировать Изменены примеры кода, чтобы вы могли определить, был ли таймаут или нажатие клавиши ...