다음 샘플 코드를 실행하고 "q"를 누르면 올바르게 닫힙니다. "예를 들어 많은 문자와 다른 문자를 많이 입력 한 다음"q "를 누르면" 나가는 것이 아니라 어떻게 해결할 수 있습니까?Python3 + Curses : "q"를 눌러 프로그램을 즉시 끝내는 방법?
import curses, time
def main(sc):
sc.nodelay(1)
while True:
sc.addstr(1, 1, time.strftime("%H:%M:%S"))
sc.refresh()
if sc.getch() == ord('q'):
break
time.sleep(1)
if __name__=='__main__': curses.wrapper(main)
답장을 보내 주신 많은 분들께 @falsetru에게 감사의 말씀을 전합니다. 그러나 샘플 코드를 언급했듯이 실제 코드는 타임 아웃/새로 고침 옵션이있는 최상위 앱이므로 정의 된 코드와 일치하도록 코드 내부에서 수면을 사용해야합니다 타임 아웃. –
그러면 코드를 더 게시해야합니다 ... – Unda
@ M.Adel,'time.sleep '을 조건부로 호출 하는게 어떨까요? (키가 눌러지지 않았을 때만 :'sc.getch()'는'-1'을 반환합니다) http://pastebin.com/JZgi9ewb – falsetru