Maison > développement back-end > Tutoriel Python > Comment importer efficacement des modules à partir d'un dossier Python ?

Comment importer efficacement des modules à partir d'un dossier Python ?

Mary-Kate Olsen
Libérer: 2024-11-29 06:43:10
original
672 Les gens l'ont consulté

How to Efficiently Import Modules from a Python Folder?

Importer des modules depuis un dossier

Lors de l'organisation de votre code Python, il devient souvent nécessaire d'importer plusieurs modules depuis un dossier spécifique. Une approche courante consiste à convertir le dossier en package Python en ajoutant un fichier __init__.py à la racine.

L'approche __init__.py

En créant un fichier __init__.py, vous pouvez importer les modules dans le dossier comme suit :

from my_package import *
Copier après la connexion

Cependant, cette approche n'est pas toujours idéale, car elle importe tous les modules du dossier, que vous en ayez besoin ou non.

Importation dynamique de modules spécifiques

Pour importer sélectivement des modules à partir d'un dossier, vous pouvez utiliser le code suivant :

import os
import inspect

# Get the current folder path
folder_path = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe())))

# Iterate over all .py files in the folder
for file_name in os.listdir(folder_path):
    if file_name.endswith('.py') and file_name != '__init__.py':
        # Import the module using dynamic import
        module_name = file_name[:-3]
        module = __import__(module_name, fromlist=['*'])
Copier après la connexion

En utilisant cette méthode, vous pouvez importer des modules spécifiques dans le dossier en y accédant via la variable module_name.

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