Heim >Backend-Entwicklung >Python-Tutorial >Wie importiert man Module effizient aus einem Python-Ordner?

Wie importiert man Module effizient aus einem Python-Ordner?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-29 06:43:10689Durchsuche

How to Efficiently Import Modules from a Python Folder?

Module aus einem Ordner importieren

Beim Organisieren Ihres Python-Codes ist es häufig erforderlich, mehrere Module aus einem bestimmten Ordner zu importieren. Ein gängiger Ansatz besteht darin, den Ordner in ein Python-Paket zu konvertieren, indem eine __init__.py-Datei im Stammverzeichnis hinzugefügt wird.

Der __init__.py-Ansatz

Durch Erstellen einer __init__.py-Datei können Sie importieren die Module innerhalb des Ordners wie folgt:

from my_package import *

Dieser Ansatz ist jedoch möglicherweise nicht immer ideal, da alle Module aus importiert werden Ordner, unabhängig davon, ob Sie sie benötigen oder nicht.

Spezifische Module dynamisch importieren

Um Module selektiv aus einem Ordner zu importieren, können Sie den folgenden Code verwenden:

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=['*'])

Mit dieser Methode können Sie bestimmte Module innerhalb des Ordners importieren, indem Sie über die Variable module_name darauf zugreifen.

Das obige ist der detaillierte Inhalt vonWie importiert man Module effizient aus einem Python-Ordner?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn