J'ai ce code:nouvelle ligne étrange lors d'une tentative de lecture unbuffered en python
def getch(self):
if os.name == 'posix':
fd = sys.stdin.fileno()
old_settings = termios.tcgetattr(fd)
try:
tty.setraw(fd)
ch = sys.stdin.read(1)
finally:
termios.tcsetattr(fd, termios.TCSADRAIN, old_settings)
elif os.name == 'nt':
ch = msvcrt.getch()
return ch
Cela va très bien sur Python 2.6 et 2.7, mais chaque fois que j'essayer de le tester sur python 3.0 et là est une nouvelle ligne imprimée par l'appel stdin.read, je pense que cela peut parce que le python 3 change en sys.stdin, stdout, et stderr mais je ne suis pas sûr de savoir comment le résoudre
EDIT: fonctionnant sur OS X 10.6.4 python 3.1 et Ubuntu 9.04 python 2.6 cela est arrivé pour moi.
Ça n'arrive pas pour moi. –