Tranformer un script en module

Fermé
Spacewiki - 26 sept. 2020 à 14:01
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 - 3 oct. 2020 à 16:43
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

Itdaboyz Messages postés 359 Date d'inscription mercredi 22 juin 2011 Statut Membre Dernière intervention 2 juillet 2024 97
26 sept. 2020 à 14:09
Quel langages utilises tu ?
0
Python
0
Itdaboyz Messages postés 359 Date d'inscription mercredi 22 juin 2011 Statut Membre Dernière intervention 2 juillet 2024 97 > Spacewiki
26 sept. 2020 à 18:45
Il suffit de nommer ton fichier monmodule.py et tu pourras l'importer dans un autre fichier avec la fonction import monmodule
0
Spacewiki > Itdaboyz Messages postés 359 Date d'inscription mercredi 22 juin 2011 Statut Membre Dernière intervention 2 juillet 2024
Modifié le 27 sept. 2020 à 11:20
Bah justement j'ai essayé et il me fait ImportError : il ne voit pas le module
0
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
27 sept. 2020 à 11:36
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
Bah oui, je l'ai mis pareil
0
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
Modifié le 27 sept. 2020 à 12:32
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
Un truc pour définir la résolution d'écran utilisée dans le jeu
0
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
Modifié le 27 sept. 2020 à 12:51
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
Oui
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
27 sept. 2020 à 19:56
ok, mais pour la 3eme fois, poste le code de ton module pour voir !
0
Je vous le passe dès que j'ai un PC sous la main
0
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
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
Modifié le 3 oct. 2020 à 11:36
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
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
En fait j'avais essayé d'autres astuces et y'en avait une qui disait de faire comme ça
0
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
Modifié le 3 oct. 2020 à 12:03
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
J'essaie mais ça marche pas
0
AH ! Bon bah merci, je fonce
0
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
3 oct. 2020 à 16:43
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