开发者

Stop when get input in Python

How开发者_运维问答 can I run a loop in Python and code it to stop when the user press a button (not ctr+c)?


I had a similar problem, found this code excerpt that helped me.

#!/usr/bin/env python
import curses

def main(win):
win.nodelay(True) # make getkey() not wait
x = 0
while True:
    #just to show that the loop runs, print a counter
    win.clear()
    win.addstr(0,0,str(x))
    x += 1

    try:
        key = win.getkey()
    except: # in no delay mode getkey raise and exeption if no key is press 
        key = None
    if key == " ": # of we got a space then break
        break

#a wrapper to create a window, and clean up at the end
curses.wrapper(main)

The problem of course is that using curses will prevent a lot of other things (like print) from working but there are ways around that.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜