IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Print l'avancée d'une boucle, écraser l'affichage précédent


Sujet :

Python

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2012
    Messages : 51
    Points : 51
    Points
    51
    Par défaut Print l'avancée d'une boucle, écraser l'affichage précédent
    Bonjour à tous,
    désolé pour le titre peu clair. Ce que je cherche à faire c'est afficher le pourcentage de l'avancée d'une boucle ce manière à écraser l'affichage précédent.
    Exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for i in range (100):
      print ("pourcentage : ",i/100)
    Le problème c'est qu'un truc comme ça m'affiche 100 lignes différentes. J'imagine qu'il faut utiliser un truc du style "flush", mais comme c'est une question plutôt simple et peu urgente, je préfère demander de l'aide ici.

    Question 2: Mieux qu'écraser l'affichage précédent, je me demande s'il y a un moyen de préserver les trois derniers affichages à chaque fois (du coup d'écraser les trucs plus anciens)?

    Merci à tous

  2. #2
    Membre éprouvé

    Homme Profil pro
    Ingénieur
    Inscrit en
    Août 2010
    Messages
    654
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2010
    Messages : 654
    Points : 1 150
    Points
    1 150
    Par défaut
    Salut,

    Tu peux te contenter d'un truc pas très propre mais simple. Tu peux "reculer" le chariot avec '\r':

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    import time
     
    for x in range(10):
        time.sleep(1)
        print '{0}\r'.format(x),
    A partir de là tu dois pouvoir construire quelque chose. Sinon tu peux te renseigner sur le module IO et sur les sortie avec stdout et stderr.

    Ju

  3. #3
    Expert éminent

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 300
    Points : 6 780
    Points
    6 780
    Par défaut
    Salut,

    Essaye ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    >>> from sys import stdout
    >>> import time
    >>> for i in range(100):
    ...     print "\r.............%s" %i,
    ...     stdout.flush()
    ...     time.sleep(0.1)

  4. #4
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2012
    Messages : 51
    Points : 51
    Points
    51
    Par défaut
    Merci beaucoup, c'est tout juste ce que je voulais

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Boucle dans une boucle pour l'affichage de listes
    Par Alain31 dans le forum ASP.NET MVC
    Réponses: 0
    Dernier message: 17/10/2013, 19h06
  2. Barre de progression dans une boucle : impossible de modifier son avancement
    Par piero-la-lune dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 21/01/2012, 11h24
  3. Avancement d'une boucle en %
    Par jujusous3 dans le forum Langage
    Réponses: 15
    Dernier message: 28/12/2009, 17h57
  4. [XSLT] dans une boucle : valeur noeud position précédente
    Par Yudala dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 02/03/2007, 09h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo