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 :

peut on faire un print temporaire (print pour un moment) [Python 2.X]


Sujet :

Python

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2014
    Messages : 56
    Points : 31
    Points
    31
    Par défaut peut on faire un print temporaire (print pour un moment)
    bonjour à tous,

    dans mon programme j'utilise une fonction qui selon les fichier qu'elle traite peut durer plus ou moins longtemps.
    je voudrais qu'au moment du traitement que je print : 'pleas wait...' et que à la fin j'affiche les resultats sans que le 'pleas wait...' ne soit toujours affiché.
    est ce possible ?.

    Merci.

  2. #2
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

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

    Informations forums :
    Inscription : Février 2006
    Messages : 12 721
    Points : 31 044
    Points
    31 044
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par tsumey Voir le message
    je voudrais qu'au moment du traitement que je print : 'pleas wait...' et que à la fin j'affiche les resultats sans que le 'pleas wait...' ne soit toujours affiché.
    est ce possible ?.
    Bonjour

    Afficher "please wait" avant le traitement puis afficher "done" après. Eventuellement on peut essayer de jouer avec les caractères d'échappement qui permettent de positionner le curseur à une position X, Y (permet donc d'effacer une ligne affichée précédemment) mais ça dépend fortement du terminal.

    Ou alors on entre dans la programmation des IHM. C'est plus difficile mais ça permet de faire des interfaces graphiques (avec des menus, des listes déroulantes et des barres de progression)...

  3. #3
    Expert éminent

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

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

    Tu peux essayer comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    # Ne pas oublier la virgule finale
    print 'Please wait ...',
     
    # Affichage des données
    print '\r'
    for d in donnees:
        print d
    Le "\r" a pour effet de ramener le curseur au début de la ligne.

    Toutefois, comme le fait remarquer Sve@r, la portabilité n'est pas garantie, ça marche ou pas.

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2014
    Messages : 56
    Points : 31
    Points
    31
    Par défaut
    @ Sve@r : MErci, je crois que VinsS a concretiser ce que tu a proposé.

    @VinsS : j'execure mais ca ne marche pas


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    def test(b):
        print '...please wait...'
        for i in range(10000): b+=1
        print '\r'
        print b
    ca donne ca. --->
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    >>> test(1)
    ...please wait...
     
    10001
    Merci

  5. #5
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 352
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 352
    Points : 36 876
    Points
    36 876
    Par défaut
    Citation Envoyé par tsumey Voir le message
    @VinsS : j'execure mais ca ne marche pas
    N'est -il pas écrit dans le commentaire du code proposé par VinsS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    # Ne pas oublier la virgule finale
    print 'Please wait ...',
    - W

  6. #6
    Membre éprouvé
    Homme Profil pro
    Aucune activité
    Inscrit en
    Novembre 2011
    Messages
    505
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Aucune activité

    Informations forums :
    Inscription : Novembre 2011
    Messages : 505
    Points : 926
    Points
    926
    Par défaut
    Citation Envoyé par tsumey Voir le message
    @ Sve@r : MErci, je crois que VinsS a concretiser ce que tu a proposé.

    @VinsS : j'execure mais ca ne marche pas


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    def test(b):
        print '...please wait...'
        for i in range(10000): b+=1
        print '\r'
        print b
    ca donne ca. --->
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    >>> test(1)
    ...please wait...
     
    10001
    Merci
    Cela ne fonctionne pas chez moi dans le shell, par contre, cela fonctionne dans un terminal Ubuntu…
    Sinon, il est aussi possible d'effacer la page (mais toujours dans le terminal, pas dans le shell)!!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    import os
    os.system('clear')
    Clodion

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2014
    Messages : 56
    Points : 31
    Points
    31
    Par défaut
    Oui ça marche , merciiiii WIZTRICKS

    comment ai je pu zappé le commentaire... ^^'

    VinsS tu me fait sortir de l'impasse encore une fois, je te remercie encore.

    Merci Clodion, je travaille sur un terminal Unix, ça marche du coups

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2014
    Messages : 56
    Points : 31
    Points
    31
    Par défaut
    quelle difference y'a t il avec et sans la vergule ?

    et ou est ce que je pourrai avoir une liste complète des caractères speciaux genre \n \t \r...

  9. #9
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

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

    Informations forums :
    Inscription : Février 2006
    Messages : 12 721
    Points : 31 044
    Points
    31 044
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par tsumey Voir le message
    quelle difference y'a t il avec et sans la vergule ?
    Ben essaye !!!
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for i in range(5): print i,
    for i in range(5): print i
    !!!

    Citation Envoyé par tsumey Voir le message
    et ou est ce que je pourrai avoir une liste complète des caractères speciaux genre \n \t \r...
    https://fr.wikibooks.org/wiki/Progra.../Types_de_base

  10. #10
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2014
    Messages : 56
    Points : 31
    Points
    31
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    Ben essaye !!!
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for i in range(5): print i,
    for i in range(5): print i

    l'un revient à la ligne l'autre non, dois je comprendre autre chose plus loin que ca ? j'aimerais bien le savoir si oui


    et merci pour le lien

  11. #11
    Membre éprouvé
    Homme Profil pro
    Aucune activité
    Inscrit en
    Novembre 2011
    Messages
    505
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Aucune activité

    Informations forums :
    Inscription : Novembre 2011
    Messages : 505
    Points : 926
    Points
    926
    Par défaut
    Citation Envoyé par tsumey Voir le message
    l'un revient à la ligne l'autre non, dois je comprendre autre chose plus loin que ca ? j'aimerais bien le savoir si oui
    Bonjour,
    Sans virgule, par défaut, le prochain "print" se poursuivra sur la ligne suivante.

    L'intérêt, ici, de mettre la virgule, c'est que le "print '\r'," pourra revenir en début de ligne… Alors que cela ne sera pas possible si la nouvelle position d'écriture est la ligne suivante.

    Clodion

  12. #12
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2014
    Messages : 56
    Points : 31
    Points
    31
    Par défaut
    si ce n'est que ça la difference je l'ai comprise,
    je considère mon problème résolu,

    Merci à tous

  13. #13
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2014
    Messages : 56
    Points : 31
    Points
    31
    Par défaut
    la je pense que mon programme est fini, me reste que l'organiser dans un interface graphique,

    connaisseriez vous le moyen le plus efficace pour apprendre wxglade, wxpython.

    me reste pas beacoups de temsp pour mon stage et il me faut le finir ce projet, j'aurais pas le temps de lire des bouquins...

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

Discussions similaires

  1. Zoomer une Print area idéalement pour impression
    Par Lost_in_VBA dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 21/07/2011, 07h40
  2. Réponses: 1
    Dernier message: 28/06/2007, 12h23
  3. Réponses: 6
    Dernier message: 07/07/2006, 17h36

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