Correction des instructions d'importation
Maintenant, comprenons pourquoi nous devons faire cela. Lorsque nous avons déplacé nos fichiers dans le package structly
, la manière dont Python recherche les modules a changé. Les instructions d'importation dans chaque fichier doivent être mises à jour pour correspondre à la nouvelle structure du package. Cela est crucial car Python utilise ces instructions d'importation pour trouver et utiliser le code d'autres modules.
Le fichier structure.py
est très important à mettre à jour. Il importe des fonctions et des classes du fichier validate.py
. Étant donné que ces deux fichiers sont maintenant dans le même package structly
, nous devons ajuster l'instruction d'importation en conséquence.
Commençons par ouvrir le fichier structly/structure.py
dans l'éditeur. Vous pouvez soit cliquer sur structly/structure.py
dans l'explorateur de fichiers, soit exécuter la commande suivante dans le terminal :
## Click on structly/structure.py in the file explorer or run:
code structly/structure.py
Une fois le fichier ouvert, regardez la première ligne de l'instruction d'importation. Actuellement, elle ressemble à ceci :
from validate import validate_type, PositiveInteger, PositiveFloat, String
Cette instruction était correcte lorsque les fichiers avaient une structure différente. Mais maintenant, nous devons la modifier pour indiquer à Python de rechercher le module validate
dans le même package. Nous la changeons donc en :
from .validate import validate_type, PositiveInteger, PositiveFloat, String
Le point (.
) avant validate
est une partie clé ici. C'est une syntaxe spéciale en Python appelée import relatif. Elle indique à Python de rechercher le module validate
dans le même package que le module actuel (qui est structure.py
dans ce cas).
Après avoir effectué cette modification, assurez - vous de sauvegarder le fichier. La sauvegarde est importante car elle rend les modifications permanentes, et Python utilisera l'instruction d'importation mise à jour lorsque vous exécuterez votre code.
Maintenant, vérifions nos autres fichiers pour voir s'ils nécessitent des mises à jour.
structly/reader.py
- Ce fichier n'importe pas de nos modules personnalisés. Cela signifie que nous n'avons pas besoin d'apporter de modifications.
structly/tableformat.py
- De même que le fichier reader.py
, celui - ci n'importe pas de nos modules personnalisés. Donc, aucune modification n'est requise ici non plus.
structly/validate.py
- Tout comme les deux fichiers précédents, il n'importe pas de nos modules personnalisés. Par conséquent, nous n'avons pas besoin de le modifier.
En programmation réelle, vos projets peuvent avoir des relations plus complexes entre les modules. Lorsque vous déplacez des fichiers pour créer ou modifier une structure de package, n'oubliez jamais de mettre à jour les instructions d'importation. Cela garantit que votre code peut trouver et utiliser les modules nécessaires correctement.