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

Comment puis-je importer efficacement tous les modules à partir d'un dossier Python ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-26 19:36:10393parcourir

How Can I Efficiently Import All Modules from a Python Folder?

Chargement de tous les modules dans un dossier

Lors de la gestion de modules organisés dans un répertoire, il devient nécessaire de les importer de manière efficace et pratique. Cette question explore un scénario dans lequel un dossier (/Foo) contient des scripts Python, mais sa conversion en package à l'aide d'un fichier __init__.py et son importation à l'aide de from Foo import * donne des résultats insatisfaisants.

Pour résoudre ce problème, un une solution complète est proposée qui identifie automatiquement tous les modules Python (fichiers .py) dans le dossier spécifié et les rend disponibles pour l'importation :

from os.path import dirname, basename, isfile, join
import glob

# List all Python (.py) files in the current folder
modules = glob.glob(join(dirname(__file__), "*.py"))

# Extract the module names without the file extension
__all__ = [basename(f)[:-3] for f in modules if isfile(f) and not f.endswith('__init__.py')]

En ajoutant ceci code dans le fichier __init__.py dans le dossier, tous les modules résidant dans le répertoire deviennent accessibles pour l'importation, permettant une approche plus rationalisée de l'importation de modules.

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!

Déclaration:
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