Maison > développement back-end > Tutoriel Python > Comment puis-je importer des fonctions à partir de répertoires distincts en Python ?

Comment puis-je importer des fonctions à partir de répertoires distincts en Python ?

Barbara Streisand
Libérer: 2024-12-30 11:55:08
original
585 Les gens l'ont consulté

How Can I Import Functions from Separate Directories in Python?

Importation de fichiers à partir de répertoires séparés

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
Copier après la connexion

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()
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal