EnterキーでEOLが送信されないのはなぜですか?
Unix / Linux EOLはLF、改行、ASCII 10、エスケープシーケンス\nです。 キーを1回押すだけのPythonスニペットを次に示します。 import sys, tty, termios fd = sys.stdin.fileno() old_settings = termios.tcgetattr(fd) try: tty.setraw(sys.stdin.fileno()) ch = sys.stdin.read(1) finally: termios.tcsetattr(fd, termios.TCSADRAIN, old_settings) return ch Enterこのスニペットに応答してキーボードを押すと\r、キャリッジリターン、ASCII 13が返されます。 上のWindows、Enter送信しますCR LF == 13 10。* nixはWindowsではありません。なぜEnter10ではなく13を与えるのですか?