Tranformer un script en module

Spacewiki -  
Phil_1857 Messages postés 1883 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je travaille sur un jeu, et je souhaiterais référencer un de mes scripts pour le transformer en module afin de m'en servir dans le programme principal. Quelqu'un peut m'aider ?

Configuration: Windows / Firefox 80.0

10 réponses

  1. Itdaboyz Messages postés 358 Date d'inscription   Statut Membre Dernière intervention   97
     
    Quel langages utilises tu ?
    0
    1. Spacewiki
       
      Python
      0
      1. Itdaboyz Messages postés 358 Date d'inscription   Statut Membre Dernière intervention   97 > Spacewiki
         
        Il suffit de nommer ton fichier monmodule.py et tu pourras l'importer dans un autre fichier avec la fonction import monmodule
        0
      2. Spacewiki > Itdaboyz Messages postés 358 Date d'inscription   Statut Membre Dernière intervention  
         
        Bah justement j'ai essayé et il me fait ImportError : il ne voit pas le module
        0
  2. Phil_1857 Messages postés 1883 Date d'inscription   Statut Membre Dernière intervention   169
     
    Bonjour spacewiki,

    Tu as écrit en début de code :

    import mon_module
    


    Et mon_module.py est dans le même répertoire que le code ?
    0
    1. Spacewiki
       
      Bah oui, je l'ai mis pareil
      0
  3. Phil_1857 Messages postés 1883 Date d'inscription   Statut Membre Dernière intervention   169
     
    Ca doit marcher alors !

    Ca ressemble à ça (avec les 2 fichiers dans le même répertoire) ? :

    mon_code.py :

    import mon_module
    
    x = test()
    print(x)
    


    mon_module.py :

    def test():
        return(10)
    


    Fais voir ce qu'il y a exactement dans le module à importer ....
    0
    1. Spacewiki
       
      Un truc pour définir la résolution d'écran utilisée dans le jeu
      0
  4. Phil_1857 Messages postés 1883 Date d'inscription   Statut Membre Dernière intervention   169
     
    1_ Mauvaise réponse: comment voir si il y a un bug dedans, je n'ai pas de boule de cristal !

    2_ Déjà, tu me confirmes bien que tu as fait exactement comme dans ma réponse précédente,

    oui ou non ?
    0
    1. Spacewiki
       
      Oui
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Phil_1857 Messages postés 1883 Date d'inscription   Statut Membre Dernière intervention   169
     
    ok, mais pour la 3eme fois, poste le code de ton module pour voir !
    0
    1. Spacewiki
       
      Je vous le passe dès que j'ai un PC sous la main
      0
    2. Spacewiki
       
      Voilà le code de mon module :
      from tkinter import *
      __name__="screenResDef"
      reswidth=None
      resheight=None
      # Définition de la résolution de l'écran
      def scnres1():
          reswidth=800
          resheight=600
          tk.destroy()
      def scnres2():
          reswidth=1024
          resheight=768
          tk.destroy()
      def scnres3():
          reswidth=1152
          resheight=864
          tk.destroy()
      def scnres4():
          reswidth=1280
          resheight=720
          tk.destroy()
      def scnres5():
          reswidth=1280
          resheight=960
          tk.destroy()
      def scnres6():
          reswidth=1280
          resheight=1024
          tk.destroy()
      def scnres7():
          reswidth=1360
          resheight=768
          tk.destroy()
      def scnres8():
          reswidth=1366
          resheight=768
          tk.destroy()
      def scnres9():
          reswidth=1600
          resheight=900
          tk.destroy()
      def scnres10():
          reswidth=1920
          resheight=1080
          tk.destroy()
      def screenResolution():
          tk=Tk("Résolution de l'écran")
          cvs=Canvas(tk, width=500, height=250)
          tk.resizable(0,0)
          cvs.pack()
          cvs.create_text(250, 50, text="The Legend of Zelda : Oracle of Seasons/Ages", font=("Zelda Oracles", 15))
          cvs.create_text(250, 150, text="Choisissez la resolution de votre ecran", font=("Zelda Oracles", 15))
          btn=Button(tk, text="800x600", command=scnres1)
          btn2=Button(tk, text="1024x768", command=scnres2)
          btn3=Button(tk, text="1152x864", command=scnres3)
          btn4=Button(tk, text="1280x720", command=scnres4)
          btn5=Button(tk, text="1280x960", command=scnres5)
          btn6=Button(tk, text="1280x1024", command=scnres6)
          btn7=Button(tk, text="1360x768", command=scnres7)
          btn8=Button(tk, text="1366x768", command=scnres8)
          btn9=Button(tk, text="1600x900", command=scnres9)
          btn10=Button(tk, text="1920x1080", command=scnres10)
          btn.pack()
          btn2.pack()
          btn3.pack()
          btn4.pack()
          btn5.pack()
          btn6.pack()
          btn7.pack()
          btn8.pack()
          btn9.pack()
          btn10.pack()
      
      
      0
  7. Phil_1857 Messages postés 1883 Date d'inscription   Statut Membre Dernière intervention   169
     
    Bonjour,

    Bizarre, j'ai copié ton code dans un fichier imp.py

    ensuite, j'ai créé dans le même répertoire un fichier test.py dans lequel

    j'ai écrit: import imp

    Et il n'y a pas d'erreur

    Il faudrait voir ton programme principal du coup ...

    A quoi sert la ligne : __name__="screenResDef" ?
    0
    1. Spacewiki
       
      Quant au programme principal je viens de l'écrire, et j'ai fini par décider de mettre tout le code en un fichier parce que sinon j'allais passer des jours à chercher une solution
      0
  8. Spacewiki
     
    En fait j'avais essayé d'autres astuces et y'en avait une qui disait de faire comme ça
    0
  9. Phil_1857 Messages postés 1883 Date d'inscription   Statut Membre Dernière intervention   169
     
    Ah OK tu n'avais pas tout dit !

    Depuis le début, on te dit qu'il faut 2 fichiers .py ! (pas besoin de toute mettre dans 1 seul fichier:)

    1 contenant le programme principal

    1 contenant le module à importer

    Les 2 dans le même répertoire

    Tu laissait entendre que c'était bien comme ça ..

    Il n'y a pas d'astuce à chercher, il n'y a qu'une façon de faire et c'est celle-là
    0
    1. Spacewiki
       
      J'essaie mais ça marche pas
      0
  10. Phil_1857 Messages postés 1883 Date d'inscription   Statut Membre Dernière intervention   169
     
    si vraiment c'est câblé exactement comme dans ma réponse du 27/09 à 12h30

    ca doit marcher

    sinon, poste ton programme principal, qu'on puisse tester

    (puisqu'on a déjà ton module à importer)
    0