je en train d'écrire un programme simple sommeil python3() sur Python 3.1 et je suis tombé sur ceci:problème
Si j'exécuter sur IDLE il fonctionne comme prévu - estampes "Initializing."
et ajoute deux points, l'un après chaque Deuxièmement, et attend une entrée.
from time import sleep
def initialize():
print('Initializing.', end='')
sleep(1)
print(" .", end='')
sleep(1)
print(" .", end='')
input()
initialize()
Le problème est que lorsque je double-clique sur le py pour exécuter le fichier, il fonctionne sur python.exe au lieu de pythonw.exe, et les choses étranges se produisent: il se joint à tous les sleep()
fois-à-dire me fait attendez 2 secondes, puis imprime toute la chaîne Initializing. . .
à la fois. Pourquoi cela arrive-t-il? Y a-t-il un moyen d'éviter cela dans le terminal? Cela fonctionne bien si j'utilise l'IDLE à la fois dans Windows et Linux.
J'imagine la raison pour laquelle il est mise en mémoire tampon est parce que vous ne l'avez pas donné une encore '\ n'. En général, l'utilisation de 'end' indiquera que vous continuez à écrire quelque chose immédiatement. –