Partage
  • Partager sur Facebook
  • Partager sur Twitter

os.system("pause") ne fonctionne pas

    23 novembre 2011 à 21:04:07

    Bonjour à tous,

    Mes fenêtre se ferme malgré l'utilisation de os.system("pause")
    En haut de page je met bien: import os

    Je fais le tuto du site et j'ai même copié/collé le code du tuto et c'est pareil...

    Je ne comprend :s

    Quelqu'un pourrait m'aider?

    Merci ^^
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      23 novembre 2011 à 21:06:59

      On peut voir le code que tu as collé?

      On peut savoir avec quelle version python tu travailles?

      On peut savoir sous quel OS tu travailles?

      Dis donc, ils se donnent le mot en ce moment... :-°
      • Partager sur Facebook
      • Partager sur Twitter
        23 novembre 2011 à 21:12:35

        Non, non sur windows seven :)

        Je saisie pas du tout en c++ j'avais pas de prob :s
        • Partager sur Facebook
        • Partager sur Twitter
        Anonyme
          23 novembre 2011 à 21:14:10

          J'ai édité mon précédent message
          • Partager sur Facebook
          • Partager sur Twitter
            23 novembre 2011 à 21:20:34

            Le code:

            # -*-coding:Latin-1 -* #permet d'afficher les accents (latin-1)
            
            import os # on importe le module os qui dispose de variables et de fonctions
                      # utiles pour dialoguer avec votre système d'exploitation
            
            # programme testant si une année, entrée par l'utilisateur,
            # est bissextile ou non
            
            print("Entrez une année :")
            annee = input() # on attend que l'utilisateur entre l'année qu'il désire tester
            annee = int(annee) # risque d'erreur si l'utilisateur n'a pas rentré un nombre
                               # si l'année est bissextile ou non
            if annee%400==0 or (annee%4==0 and annee%100!=0):
                print("L'année entrée est bissextile.")
            else:
                print("L'année entrée n'est pas bissextile.")
            
            # on met le programme en pause pour éviter qu'il ne se referme (Windows)
            os.system("pause")
            


            version:
            python-2.7.2.amd64

            j'ai essayé une autre version sur un autre pc, même résultat :(

            windows seven et j'ai testé sous XP aussi



            voila :)
            • Partager sur Facebook
            • Partager sur Twitter
            Anonyme
              23 novembre 2011 à 21:27:25

              Citation

              python-2.7.2.amd64



              Cherche plus :) Ta version ne supporte pas ce code car ce code en l'occurence est prévu pour fonctionner en version 3.x

              # -*-coding:Latin-1 -* #permet d'afficher les accents (latin-1)
              
              import os # on importe le module os qui dispose de variables et de fonctions
                        # utiles pour dialoguer avec votre système d'exploitation
              
              # programme testant si une année, entrée par l'utilisateur,
              # est bissextile ou non
              
              print "Entrez une année :"
              annee = raw_input() # on attend que l'utilisateur entre l'année qu'il désire tester
              annee = int(annee) # risque d'erreur si l'utilisateur n'a pas rentré un nombre
                                 # si l'année est bissextile ou non
              if annee%400==0 or (annee%4==0 and annee%100!=0):
                  print "L'année entrée est bissextile."
              else:
                  print "L'année entrée n'est pas bissextile."
              
              # on met le programme en pause pour éviter qu'il ne se referme (Windows)
              os.system("pause")
              
              • Partager sur Facebook
              • Partager sur Twitter
                23 novembre 2011 à 21:50:34

                Bah comment je fais pour le faire tourner, je suis allé le télécharger sur le site officiel de python o_O
                • Partager sur Facebook
                • Partager sur Twitter
                Anonyme
                  23 novembre 2011 à 21:51:41

                  Non mais mon post précédent je t'ai donné le code fonctionnel pour ta version 2.7
                  • Partager sur Facebook
                  • Partager sur Twitter
                    23 novembre 2011 à 21:53:50

                    Ok, c'est bon, j'ai mal cherché, je dl la verion 3.

                    Merci Fred ^^
                    • Partager sur Facebook
                    • Partager sur Twitter
                    Anonyme
                      23 novembre 2011 à 21:56:59

                      La version 3.x n'est pas une fin en soit, mais pour un débutant je te la conseille quand même
                      • Partager sur Facebook
                      • Partager sur Twitter
                        23 novembre 2011 à 21:59:39

                        Bon, je sens que je vais me faire taper sur les doigts, je viens de telecharger la version 3.2.2 en prenant soin de desinstaller la version précédente et j'ai toujours le même problème
                        • Partager sur Facebook
                        • Partager sur Twitter
                        Anonyme
                          23 novembre 2011 à 22:03:50

                          En reprenant ton code de base?
                          • Partager sur Facebook
                          • Partager sur Twitter
                            23 novembre 2011 à 22:05:44

                            oui.....


                            je clique sur le fichier en .py contenant le programme, c'est bien comme ça que je dois faire?
                            • Partager sur Facebook
                            • Partager sur Twitter
                            Anonyme
                              23 novembre 2011 à 22:11:38

                              Je ne connais pas windows suffisamment en ce qui concerne python, mais je peux te dire que c'est pas une histoire de code ni de version maintenant, c'est juste un problème d'exécution de ton programme.

                              Essai en faisant "ouvrir avec" ou un truc de ce genre et de bien spécifier que c'est python 3 avec lequel tu veux ouvrir ce fichier.
                              • Partager sur Facebook
                              • Partager sur Twitter
                                23 novembre 2011 à 22:23:48

                                Quand je fais ouvrir avec le logiciel, une nouvelle fenêtre s'ouvre ou je vois les lignes de codes.

                                Je fais run

                                Ca se passe bien (question etc... réponse) et juste après une fenêtre DOS s'ouvre et me dit: appuyez sur une touche pour continuer....

                                incroyable
                                • Partager sur Facebook
                                • Partager sur Twitter
                                Anonyme
                                  23 novembre 2011 à 22:26:35

                                  donc ça fonctionne maintenant, tu peux cliquer dessus, ça fonctionnera!
                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    23 novembre 2011 à 22:27:57

                                    Ro purée, ça marche!!!!!! oui!!!!!

                                    Merci Fred
                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      23 novembre 2011 à 22:42:13

                                      Par contre, histoire de faire les choses proprement, n'utilise pas os.system("pause"), mais remplace-le plutôt par :

                                      input("Appuyez sur la touche ENTREE pour continuer...")
                                      


                                      Ça aura le mérite de rendre ton code portable, et aussi d'éviter d'avoir à importer le module OS juste pour ça.
                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                      Zeste de Savoir, le site qui en a dans le citron !
                                        23 novembre 2011 à 23:42:54

                                        Au pire, juste faire from os import system serait déjà moins lourd.
                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                          24 novembre 2011 à 0:11:09

                                          Citation : drivedric

                                          Au pire, juste faire from os import system serait déjà moins lourd.



                                          Dans l'absolu, oui, mais dans ce cas précis, il vaut mieux expliquer tout de suite au PO que :
                                          * la fonction system est dangereuse, et à éviter d'utiliser à tout prix quand c'est possible (d'où l'utilisation de input)
                                          * faire un appel système à pause sous windows pour mettre le programme en pause à la fin de l'exécution est une pratique sale et non portable.
                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                          Zeste de Savoir, le site qui en a dans le citron !
                                            24 novembre 2011 à 0:20:27

                                            Citation : nohar

                                            Citation : drivedric

                                            Au pire, juste faire from os import system serait déjà moins lourd.



                                            Dans l'absolu, oui, mais dans ce cas précis, il vaut mieux expliquer tout de suite au PO que :
                                            * la fonction system est dangereuse, et à éviter d'utiliser à tout prix quand c'est possible (d'où l'utilisation de input)
                                            * faire un appel système à pause sous windows pour mettre le programme en pause à la fin de l'exécution est une pratique sale et non portable.



                                            Oui, c'est certain, mais je voulais uniquement évoquer le fait que tant qu'à utiliser system aussi bien ne pas importer tout le module.
                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                              24 novembre 2011 à 0:32:47

                                              Citation : blackhoole


                                              Je fais le tuto du site et j'ai même copié/collé le code du tuto et c'est pareil...



                                              Ce que propose le tuto n'est pas une bonne solution. Si tu veux lancer un fichier python sous Windows, faut pas double-cliquer dessus, il faut

                                              -- l'ouvrir et l'exécuter dans IDLE (léditeur "officiel" de Python et que je te recommande si tu es débutant et que je te recommande encore plus si tu es débutant en programmation),
                                              -- ou bien, si tu n'es pas allergique à ça, l'exécuter dans une console.

                                              Le double-clic, c'est bon pour les programmes en mode graphique qui sont gérés par une boucle événementielle.
                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                                11 mars 2016 à 1:38:50

                                                bonsoir a vous j'utilise python 3.4 et avec pycharm sous linux et "os.system("pause")" ne marche pas j'ai importer le module os et ca marche toujour pa que faire?

                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                  11 mars 2016 à 16:08:25

                                                  Bravo pour le déterrage ! :D

                                                  Tu dois faire ce que candide a écrit. Voilà tout.

                                                  • Partager sur Facebook
                                                  • Partager sur Twitter
                                                    6 juillet 2017 à 20:15:03

                                                    Bonjour,

                                                    Tout d'abord, excusez-moi de déterrer le sujet mais pour plus de précision, la commande

                                                    os.system("pause")

                                                    ne fonctionne que sous Windows, sous Linux (en Bash), la commande "pause" peut être remplacée par la commande "read" :

                                                    read -n1 -r -p "Pressez une touche pour continuer..."

                                                    Bonne fin de journée,

                                                    Alexis

                                                    • Partager sur Facebook
                                                    • Partager sur Twitter
                                                      6 juillet 2017 à 20:23:01

                                                      Un déterrage de 1 ans apres un déterrage de 5 ans .... laisser les mourrir en paix svp.
                                                      • Partager sur Facebook
                                                      • Partager sur Twitter
                                                        15 février 2019 à 9:17:29

                                                        VRaiment dsl de déterrer le sujet mais je suis sous windows 10 et j'utilise la version 3.72 de python et le message d'erreur est bizarre, pouvez vous m'aider plz

                                                        et j'utilise nottepad++

                                                        Merci d'avance

                                                        • Partager sur Facebook
                                                        • Partager sur Twitter
                                                          15 février 2019 à 10:19:43

                                                          Il manque une parenthèse fermante, mais je vois pas le rapport avec le texte d'origine.
                                                          • Partager sur Facebook
                                                          • Partager sur Twitter

                                                          Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
                                                          La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

                                                            15 février 2019 à 12:17:29

                                                            Quand tu importes explicitement la fonction système du module os, tu peux dois appeler system() directement, pas os.system() sinon ça va planter.

                                                            Comme évoqué sur le sujet auquel tu répond, tu peux éviter d'utiliser os.system("pause") alors que input() fait la même chose en plus portable et sans avoir besoin d'importer le module os.

                                                            L'import avec l'astérisque est aussi à éviter à cause de conflits de noms possibles.

                                                            • Partager sur Facebook
                                                            • Partager sur Twitter

                                                            Blond, bouclé, toujours le sourire aux lèvres...

                                                              15 février 2019 à 12:21:31

                                                              Cependant ce n'est pas l'erreur signalé, s'en est une autre, je tiens à préciser juste pour que le PO sache que les deux propositions sont à prendre en comptes.

                                                              L'erreur signalé par @LoupSolitaire serait du type,

                                                              Traceback (most recent call last):
                                                                File "<stdin>", line 1, in <module>
                                                              NameError: name 'os' is not defined
                                                              



                                                              • Partager sur Facebook
                                                              • Partager sur Twitter

                                                              Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
                                                              La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

                                                              os.system("pause") ne fonctionne pas

                                                              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                                              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                                              • Editeur
                                                              • Markdown