Jak zařídit, aby se přečetl znak bez čekání na Enter?
Windows
Viz funkce msvcrt.getch() a následující.
Unix
Přímo
import sys import termios import tty fd = sys.stdin.fileno() old = termios.tcgetattr(fd) tty.setcbreak(fd) try: print 'Stiskni q pro konec' ch = sys.stdin.read(1) while ch <> 'q': print 'To nebylo ono' ch = sys.stdin.read(1) finally: termios.tcsetattr(fd, termios.TCSAFLUSH, old)
NCurses
import curses stdscr = curses.initscr() try: stdscr.scrollok(True) curses.noecho() curses.cbreak() stdscr.addstr('Stiskni q pro konec\n') ch = stdscr.getch() while ch <> ord('q'): stdscr.addstr('To nebylo ono\n') ch = stdscr.getch() finally: curses.nocbreak() curses.echo() curses.endwin()