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
    Membre averti
    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
    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
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 853
    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 853
    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)...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  3. #3
    Expert confirmé

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

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 307
    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
    Membre averti
    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
    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
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 778
    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 778
    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
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  6. #6
    Membre émérite
    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
    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
    Membre averti
    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
    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
    Membre averti
    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
    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
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 853
    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 853
    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
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  10. #10
    Membre averti
    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
    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 émérite
    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
    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
    Membre averti
    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
    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
    Membre averti
    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
    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