Python - Wie können Sie den Alias ​​eines Moduls verwenden, um seine Submodule zu importieren?

8

Ich habe einen langen Modulnamen und möchte vermeiden, dass ich ihn viele Male in meinem Dokument eingeben muss. Ich kann einfach import long_ass_module_name as lamn machen und es so nennen. Dieses Modul hat jedoch viele Submodule, die ich auch importieren und verwenden möchte.

In diesem Fall kann ich import lamn.sub_module_1 nicht schreiben, weil der Python-Import diesen Alias, den ich für meinen long_ass_module_name gemacht habe, nicht erkennt. Wie kann ich das erreichen?

Soll ich einfach alle Submodule im __init__.py meines Hauptmoduls importieren?

    
levesque 03.02.2012, 17:03
quelle

2 Antworten

11

Ein Alias-Objekt ändert sich immer noch, wenn Sie Submodule importieren,

%Vor%

Die import -Anweisung übernimmt immer den vollständigen Namen des Moduls. Das Modul ist nur ein Objekt und das Importieren eines Submoduls fügt diesem Objekt ein Attribut hinzu.

    
Dietrich Epp 03.02.2012, 17:06
quelle
1

Diese (sehr unrecommendable) Möglichkeit, alle Mitglieder eines Objekts in den aktuellen Namespace zu importieren, funktioniert, indem Sie das vars() dictionary nachschlagen:

%Vor%     
gauteh 16.06.2016 11:18
quelle

Tags und Links