[英]How to trully bind key in python console program in linux?
我正在尋找python [linux]中的鍵綁定。
我的程序必須捕獲鍵“ q”並正確關閉。
我找到了這個
import curses
stdscr = curses.initscr()
curses.cbreak()
stdscr.keypad(1)
stdscr.addstr(0,10,"Hit 'q' to quit")
stdscr.refresh()
key = ''
while key != ord('q'):
key = stdscr.getch()
stdscr.addch(20,25,key)
stdscr.refresh()
if key == curses.KEY_UP:
stdscr.addstr(2, 20, "Up")
elif key == curses.KEY_DOWN:
stdscr.addstr(3, 20, "Down")
curses.endwin()
但是它卡住了循環,當按下任何鍵時,我的程序必須每秒鍾工作一次,並在后台捕獲“ q”。
加:
stdscr.nodelay(True)
到程序開始。 然后,getch總是會立即返回。 如果自上次調用getch以來用戶未進行任何操作,它將返回-1。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.