Partage
  • Partager sur Facebook
  • Partager sur Twitter

Exécution .py

Sous linux

Sujet résolu
    11 mai 2011 à 18:19:45

    Bonjour,

    Je commence à programmer en python, puis j'ai réussis a créer mon .py.
    Ma question est comment faire exécuter le .py directement dans le terminal au lieu de passer par la fenêtre où l'on choisis d'afficher, de lancer ou de lancer dans un terminal.

    Ma distribution est Ubuntu 10.04.

    Merci d'avance :)
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      11 mai 2011 à 18:31:06

      Plusieurs choses à faire

      1) Ne pas oublier dans la 1ère ligne de ton code d'ajouter

      #!/usr/bin/python
      


      2) Click droit sur le fichier --> Propriétés --> Permissions --> Autoriser l'exécution du fichier...

      3) Taper cette commande dans le terminal

      ./tonfichier.py


      Edit : D'autres solutions sont possibles
      • Partager sur Facebook
      • Partager sur Twitter
        11 mai 2011 à 18:31:52

        Salut,

        $ python /chemin/vers/ton/script.py


        Salut.

        Edit : ou bien, pour reprendre la solution de fred, pour donner les droits en exécution sur ton script :

        $ chmod u+x script.py
        $ ./script.py
        • Partager sur Facebook
        • Partager sur Twitter
        Zeste de Savoir, le site qui en a dans le citron !
          11 mai 2011 à 21:14:15

          Citation : fred1599

          Plusieurs choses à faire

          #!/usr/bin/python
          



          On préfère #!/usr/bin/env python maintenant, c'est du chipotage, mais autant commencer directement avec de bonnes habitudes.
          • Partager sur Facebook
          • Partager sur Twitter
            12 mai 2011 à 18:04:04

            Citation : MathX

            Citation : fred1599

            Plusieurs choses à faire

            #!/usr/bin/python
            



            On préfère #!/usr/bin/env python maintenant, c'est du chipotage, mais autant commencer directement avec de bonnes habitudes.



            Pourquoi d'ailleurs, pour /usr/bin/env ?
            • Partager sur Facebook
            • Partager sur Twitter

            Sandro CAZZANIGA

              12 mai 2011 à 18:14:54

              Parce que c'est beaucoup plus souple que de donner dans le script le chemin absolu d'un exécutable qui peut très bien être installé ailleurs…
              • Partager sur Facebook
              • Partager sur Twitter
              Zeste de Savoir, le site qui en a dans le citron !
                14 mai 2011 à 21:16:49

                Milles excuse d'intervenir dans le sujet, mais tant qu'on en parle, j'ai 3 version de python, j'utilise la 3.2, le shebang doit être #!/usr/bin/env python3.2 ? ou juste #!/usr/bin/env python ? Il détermine la version tout seul ou on doit lui indiquer ?
                • Partager sur Facebook
                • Partager sur Twitter
                  15 mai 2011 à 16:38:56

                  Dans ton cas ce devrait plutôt être :

                  #!/usr/bin/env python3
                  


                  De cette manière tu spécifies que tu utilises python3 sans pour autant rendre ton script incompatible avec la prochaine version (3.3)…
                  • Partager sur Facebook
                  • Partager sur Twitter
                  Zeste de Savoir, le site qui en a dans le citron !
                    16 mai 2011 à 8:30:25

                    D'accord, mais pour un même programme, en utilisant time:

                    #!/usr/bin/env python3 ralentit l'exéctution (par rapport à #!/usr/bin/python3).

                    Après, si l'user a décidé d'installer python 3 ailleurs, c'est sûr que ce sera plus modulable et portable.
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Sandro CAZZANIGA

                      16 mai 2011 à 8:55:50

                      @Kharec: Pour quelle(s) raison(s) ? On peut voir le programme en question et le résultat de ton test ?
                      Je suis un tantinet sceptique...
                      • Partager sur Facebook
                      • Partager sur Twitter
                        16 mai 2011 à 21:09:27

                        Ouai mais hum, c'est débile d'en arriver à chercher quel est le shebang le plus rapide.

                        La différence est d'environ 0.001 seconde.
                        • Partager sur Facebook
                        • Partager sur Twitter
                          17 mai 2011 à 18:14:52

                          Citation : Plug'n'Play 512

                          Ouai mais hum, c'est débile d'en arriver à chercher quel est le shebang le plus rapide.

                          La différence est d'environ 0.001 seconde.



                          Aucune information n'est bête, ni aucun test inutile ;)
                          • Partager sur Facebook
                          • Partager sur Twitter

                          Sandro CAZZANIGA

                            17 mai 2011 à 20:18:35

                            Si tu utilises un langage interpreté, aussi rapide soit-il, 0,001 seconde c'est totalement négligeable.
                            Surtout si le code devient moins portable en contrepartie.
                            • Partager sur Facebook
                            • Partager sur Twitter
                            yjltg.
                              17 mai 2011 à 21:29:15

                              Citation : Kharec

                              Citation : Plug'n'Play 512

                              Ouai mais hum, c'est débile d'en arriver à chercher quel est le shebang le plus rapide.

                              La différence est d'environ 0.001 seconde.



                              Aucune information n'est bête, ni aucun test inutile ;)



                              Bah en l'occurence, si.
                              • Partager sur Facebook
                              • Partager sur Twitter
                                17 mai 2011 à 23:06:06

                                Citation : Plug'n'Play 512

                                Ouai mais hum, c'est débile d'en arriver à chercher quel est le shebang le plus rapide.

                                La différence est d'environ 0.001 seconde.



                                +1

                                c'est clair qu'on va éviter de boucler sur le shebang ^^
                                (d'façon s'pas possib')
                                • Partager sur Facebook
                                • Partager sur Twitter

                                Python c'est bon, mangez-en. 

                                  20 mai 2011 à 18:00:15

                                  Ok, je me tais...
                                  • Partager sur Facebook
                                  • Partager sur Twitter

                                  Sandro CAZZANIGA

                                  Exécution .py

                                  × 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