code: def getch():
      
      filedescriptor = sys.stdin.fileno()
      old_settings = termios.tcgetattr(filedescriptor)
      if PLATFORM == 'win32':
          character = msvcrt.getch()
      else:
          try:
              tty.setraw(sys.stdin.fileno())
              character = sys.stdin.read(1)
          finally:
              termios.tcsetattr(filedescriptor, termios.TCSADRAIN, old_settings)
      return character
docs: Read a single character non-echoed and return it. Recipe from:
      http://code.activestate.com/recipes/
      134892-getch-like-unbuffered-character-reading-from-stdin/