Je fais une barre de progression pour mon script de téléchargement et je veux imprimer une ligne de multiples "#" mais je ne peux pas le faire fonctionner. Lorsque je dis Python de ne pas ajouter de nouvelle ligne, cela le supprimez, mais cela ne fonctionne pas comme prévu sous des fonctions. Utilisation "Imprimer ('#', End = '')" Dans Python 3 ou "Imprimer" # "", "Dans Python 2 le supprime, mais lorsqu'il est exécuté sous une fonction, il n'imprime rien avant que toute la fonction ne soit terminée, Il ne devrait pas attendre comme une impression normale.
import time
i = 0
def status():
print('#', end='')
while i < 60:
status()
time.sleep(1)
i += 1
4 Réponses :
Vous devez probablement rincer le tampon de sortie après chaque Invocation d'impression code>. Voir Comment chasser la sortie de Python Imprimer? P>
J'ai essayé votre code dans l'inactif pour 2.5. Donc, je devais utiliser le format d'impression comme - impression '#', p>
Voici ce que je reçois lorsque je l'exécute - le système imprime le symbole "#". À la fin de la boucle, j'obtiens le rapide au ralenti. Il me semble donc que cela fait ce que vous attendez. P>
Quelle version utilisez spécifiquement? Désolé je n'ai pas la version 3. Donc, je ne peux donc pas le tester là-bas. P>
J'ai essayé Python 2.6.1 et Python 3.2 dans Terminal.app sur OS X.
Vous pouvez toujours utiliser la fonction () code>. p>
Python fait tamponner la sortie jusqu'à une nouvelle ligne (ou jusqu'à une certaine taille), ce qui signifie que cela n'imprimera rien tant que le tampon ne reçoit pas de caractère de nouveau ligne Si vous voulez imprimer immédiatement, vous devez le rincer manuellement. Cela peut être fait en définissant l'argument de mots-clés code> sur \ n code>. En effet, l'impression est vraiment coûteuse en termes de performance, il est donc préférable de remplir un petit tampon et d'imprimer uniquement une fois de temps en temps. true code>. P>
Pourquoi essayez-vous de réinventer des roues? pypi.python.org/pypi/fish
J'utilise une solution basée sur Ceci qui est très cool, imo: )
Truc cool. Mais ma progression est en fait un pénis pour que ma solution minimale fonctionne mieux :)