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 :

Import fichier wxpython


Sujet :

Python

Vue hybride

friteurs Import fichier wxpython 21/05/2012, 09h04
fred1599 Des éléments de réponse... 21/05/2012, 09h36
VinsS Pour la deuxième question: ... 21/05/2012, 09h53
friteurs Bon alors je fais une boucle... 21/05/2012, 10h14
friteurs Pour que ce soit plus simple... 21/05/2012, 11h06
VinsS Si je comprend bien le module... 21/05/2012, 18h53
Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Janvier 2011
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 9
    Par défaut Import fichier wxpython
    Bonjour a tous le monde.
    Voici mon probleme, j'ai un programme qui dois appeler une autre application python, cree par quelqu'un d'autre, et programme en wxpython. Plusieurs soucis pour cela:
    - Le fichier n'est pas dans le meme dossier
    - L'appel de se programme dois se trouver dans une boucle.

    Pour le probleme du dossier je passe par sys.path auquel j'ajoute mon chemin et je fais un import du fichier. Mais comme l'appel est dans une boucle et que l'on ne peut appeler le fichier qu'une seul fois, la boucle suivante le programme ne se charge pas et passe a la suite.
    Je n'arrive pas a importer une classe en wxpython.

    Merci d'avance pour les idees.

  2. #2
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 060
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 060

  3. #3
    Expert confirmé

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

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 306
    Par défaut
    Pour la deuxième question:

    Citation Envoyé par friteurs Voir le message
    ...Mais comme l'appel est dans une boucle et que l'on ne peut appeler le fichier qu'une seul fois, la boucle suivante le programme ne se charge pas et passe a la suite.
    Je n'arrive pas a importer une classe en wxpython.
    Tu importes le module, tu ne l'appelles pas.

    Montre, même en pseudo-code, ce que tu fais exactement, il s'agit de code qui doit être réexécuté plusieurs fois ?

  4. #4
    Membre du Club
    Inscrit en
    Janvier 2011
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 9
    Par défaut
    Bon alors je fais une boucle sur un fichier texte, chaque ligne contient des parametres. Ensuite j'appel un fichier qui execute un code ( il cree un fichier texte donc rien de bien mechant), et ensuite j'appel ce fameux programme qui va se servir de ce fichier cree:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    sys.path.append(chemin)
    sys.argv=[arg1,arg2]
    import programme
    Voila donc je dois appeler un fichier en lui passant des arguments. Mais donc a partir de la 2eme boucle l'import pose probleme.

  5. #5
    Membre du Club
    Inscrit en
    Janvier 2011
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 9
    Par défaut
    Pour que ce soit plus simple j'ai ramener mon probleme a ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    import os
    import sys
    sys.path.append(chemin)
    sys.argv=[arg1,arg2]
    import programme
    import programme
    Et donc bien sur le 2eme import ne marche pas. Comment faire?
    La classe a appeler dans programme se nomme class Appli(wx.App).

  6. #6
    Expert confirmé

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

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 306
    Par défaut
    Si je comprend bien le module 'programme' s'exécute directement lors de son import.

    Première chose que je ferais, hacker le code du module en question pour que cette horreur ne soit plus possible.

    Tu n'as pas accès à ce code ? Raison de plus pour ne pas l'exécuter aveuglément.

    Tu connais le code, mais tu peux pas y toucher ? copie le dans ta zone de travail et patch le avant de l'utiliser. Le tout en une fois dans ton propre code.

    En dernier recours:
    main.py
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    # -*- coding: utf-8 -*-
     
    import sys
     
    if __name__ == '__main__':
        sys.argv = 'arg_1', 'arg_2'
        import other
        sys.argv = 'arg_3', 'arg_4'
        reload(other)
        sys.argv = 'arg_5', 'arg_6'
        reload(other)
    other.py (le fameux alien)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    # -*- coding: utf-8 -*-
    import sys
     
    def do_something(*args):
        print "\nName: {0}: value: {1}".format(args[0][0], args[0][1])
     
    do_something(sys.argv)
    Mais vraiment en dernier recours, hein.

Discussions similaires

  1. [SQLServer]Script import fichier .txt
    Par Jenbi dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 25/08/2006, 16h49
  2. import fichier
    Par chbruno dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 14/04/2005, 12h26
  3. [IMPORTER] fichier .xls vers postgresql
    Par gloogloo dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 31/03/2005, 11h30
  4. Import fichier ASCII dans une base
    Par pithier dans le forum Bases de données
    Réponses: 3
    Dernier message: 01/02/2005, 19h03
  5. Pb import fichier txt avec lignes de longueurs diverses
    Par zebulon90 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 09/12/2004, 08h32

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