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 :

appeler des scripts executables


Sujet :

Python

  1. #1
    Membre régulier Avatar de Mydriaze
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    192
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 192
    Points : 95
    Points
    95
    Par défaut appeler des scripts executables
    bonjour à tous,

    Je voudrais faire un script "demarer.py" qui appel d'autres scripts python executables qui sont ds le meme dossier.

    script1.py
    [...]
    script2.py
    [...]
    script3.py
    [...]

    Mais je ne trouve pas le code pour appeler et lancer ces scripts.
    Ce sont juste des scripts executables basics, sans classes...

    Merci d'avance si vous pouvez me depanner...

  2. #2
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Décembre 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2007
    Messages : 758
    Points : 970
    Points
    970
    Par défaut
    bonjour,

    tu devrais trouver ton bonheur ici.

  3. #3
    Membre régulier Avatar de Mydriaze
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    192
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 192
    Points : 95
    Points
    95
    Par défaut
    Ah oui!

    Il suffit juste de faire

    os.popen ("script1.py")

    et ça le lance ..

    Merci beaucoup pour le coup de main!!


  4. #4
    Membre régulier Avatar de Mydriaze
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    192
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 192
    Points : 95
    Points
    95
    Par défaut
    euh non, ça ne marche pas

    autant pour moi

    Je comprends rien ...

    Il faut une commande shell apparement...?

    parce que si je fais


    os.popen ("/home/mon_dossier/script1.py")

    ou

    os.popen ("/script1.py")

    ça me met :

    sh: /home/mon_dossier/script1.py: Aucun fichier ou dossier de ce type

    alors que je suis dans le bon repertoire...

    si je mets

    os.popen ("script1.py")

    ça me met:

    sh: script1.py: command not found

  5. #5
    Membre confirmé Avatar de dapounet
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    469
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 469
    Points : 567
    Points
    567
    Par défaut
    Bonjour,

    Et avec import ça donne quoi ?
    :wq

  6. #6
    Membre éclairé
    Homme Profil pro
    heu...
    Inscrit en
    Octobre 2007
    Messages
    648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : heu...

    Informations forums :
    Inscription : Octobre 2007
    Messages : 648
    Points : 773
    Points
    773
    Par défaut
    la commande shell est tout simplement... python ! : "python [File] [argument1] [...]"

    une autre méthode pour faire ce que tu veux, si toutefois aucun argument n'est exigé par tes scripts :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    liste=['script1.py','script2.py']
    for f_name in liste:
        f_in=open('./'+f_name,'r')
        exec(f_in.read())
        f_in.close()

  7. #7
    Membre averti Avatar de alexdevl
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    265
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2007
    Messages : 265
    Points : 344
    Points
    344
    Par défaut
    Tu peux faire :
    import script1
    import script2
    ...
    Ça doit marcher ....mais il faut éventuellement gérer les appels dans les scripts avec l'attribut __name__
    ="main" dans le programme principal
    = "script1" dans script1
    = "script2" dans script2

  8. #8
    Membre régulier Avatar de Mydriaze
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    192
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 192
    Points : 95
    Points
    95
    Par défaut
    ok! merci beaucoup!

    j'ai peiné, parce que je n'ai jamais utilisé __main__ et __name__,
    donc ça, ça marche.
    Il me reste encore à tester les autres possibilites.

    Merci infiniment!

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

Discussions similaires

  1. [Débutant] programme qui appel des scripts VBS
    Par Maxmoon13 dans le forum C#
    Réponses: 1
    Dernier message: 23/07/2013, 10h46
  2. [1.x] Appel à des scripts externes
    Par Hellblow dans le forum Symfony
    Réponses: 3
    Dernier message: 26/09/2011, 18h47
  3. [Débutant] Création d'une application Java qui appelle des scripts Perl
    Par dark_angel91 dans le forum Débuter avec Java
    Réponses: 1
    Dernier message: 31/05/2011, 19h31
  4. Debutant:création d'une application java qui appelle des scripts perl
    Par dark_angel91 dans le forum Interfaces Graphiques
    Réponses: 1
    Dernier message: 30/05/2011, 07h04
  5. Réponses: 19
    Dernier message: 30/06/2008, 12h19

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