Bonjour!
Je voudrais savoir si on peut créer une classe, écrire ses méthodes dans un autre fichier *py et importer ce fichier (from xxxx import *)?
Merci de vos précieuses réponses
 importer des methodes
 importer des methodes
				
				
						
							
							
						
						
				Bonjour!
Je voudrais savoir si on peut créer une classe, écrire ses méthodes dans un autre fichier *py et importer ce fichier (from xxxx import *)?
Merci de vos précieuses réponses
 
 
				
				
						
						
				Salut,
Si tu cherches à savoir si on peut créer un objet (donc classe) dans un fichier ET ses méthodes dans un autre, je réponds pas directement. A la question, est-ce que l'on peut définir un objet dans autre fichier et l'utiliser, oui tout à fait.
Je pense que c'est la première question qui t'intéresse. Tu dois pouvoir t'en sortir avec de l'héritage comme ceci:
monModule.py:
main.py:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
Bon, dans l'exemple que je donne l'objet "obj" est créé à partir de l'objet "Module" du fichier monModule. Il hérite alors de tout ses attributs et méthodes. Tu peux alors ajouter de nouveaux attributs et méthodes si besoin est. Tu peux l'employer comme ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
Voilà...
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
Ju
 
 
				
				
						
						
				Tu peux, mais c'est chiant à faire, ça n'a aucun intérêt et tu perdras l’auto complétion dans les IDE (entre autre...).
 
 
				
				
						
						
							
						
				Salut,
Techniquement, on peut faire:
module:
class module:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
J'ai ajoute X pour montrer que "func" s'attend a ce que l'objet passe en paramètre ait ce X. On appelle çà un pré-requis ou une dépendance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
Toute la difficulté de la POO sera de trouver la moins mauvaise association entre C et func pour qu'on ne passe pas trop de temps a trouver pourquoi le programme ne fonctionne plus après un changement de func ou de C.
L’héritage permet de localiser les dépendances: si func dépend d'un objet ayant un attribut X, on peut écrire:
Tant que "self" est un B... on est sur qu'il aura un attribut X et on plus facilement gérer la dépendance entre func et X en mettant cela dans un même fichier.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
Comme une fonction peut avoir plusieurs paramètres, l’héritage est difficile a généraliser. Tester que les objets sont de type attendu via isinstance, vérifier qu'ils ont un attribut X, pour récupérer une valeur de X par défaut ou se vautrer plus élégamment?
- W
Partager