Lors de la manipulation de fichiers à partir de différents dossiers, il peut être difficile d'importer des fonctions d'un fichier dans un autre. Ceci se produit dans diverses structures de répertoires, impliquant souvent des dossiers imbriqués et plusieurs fichiers.
Considérez la structure de répertoires ci-dessous :
application ├── app │ └── folder │ └── file.py └── app2 └── some_folder └── some_file.py
Dans ce scénario, comment peut-on importer une fonction (par exemple, func_name) défini dans file.py à partir de some_file.py ? Bien que la méthode intuitive from application.app.folder.file import func_name puisse sembler plausible, elle génère souvent des erreurs.
Par défaut, Python examine uniquement le répertoire dans lequel le script de point d'entrée (celui en cours d'exécution) réside et le sys.path, qui inclut le chemin d'accès à l'installation du package. Si le fichier requis se trouve en dehors de ces emplacements, l'importation échoue.
Cependant, il est possible d'étendre le chemin de recherche de Python de manière dynamique :
# some_file.py import sys # appending search path sys.path.insert(1, '/path/to/application/app/folder') # importing file and function import file func_name()
En insérant le répertoire contenant file.py dans le chemin de recherche, Python peut désormais l'importer avec succès. Cette approche permet une gestion flexible des fichiers dans différents répertoires, ce qui en fait une solution précieuse lorsque vous travaillez avec des structures de fichiers séparées.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!