In unseren Projekten haben wir die Ebene 'Kontrollen' mit den folgenden Modulen: 'grid', 'gridcell', 'combo' usw. Das Grid-Modul importiert das Gridcell-Modul, da das Grid aus Zellen besteht, während jede Zelle eine Combo enthalten kann. Wir beginnen also mit der Verwendung von 'from ... import ...'-Anweisungen innerhalb dieser Klassen auf folgende Weise:
#grid.py
from controls.gridcell import cell
#gridcell.py
from controls.combo import combo
Aber das war in Ordnung, bis wir anfingen, das Raster als Kombinationsinhalt zu verwenden. Sobald wir damit beginnen, mussten wir die Anweisung "from grid import grid" in die Datei "combo.py" einfügen. Nachdem wir dies getan haben, erhalten wir eine Import-Ausnahme:
from controls.gridcell import gridcell
ImportError: Cannot import name gridcell
BEARBEITET:
Ich habe auch 'importieren ... als ...' versucht und erhalte folgende Fehlermeldung:
import controls.gridcell as gridcell
AttributeError: 'module' object has no attribute 'gridcell'
Ich habe mehrere Artikel gelesen, und alles, was ich über die Lösung dieses Problems gefunden habe, ist die Verwendung der Anweisung "import" ohne "from", z. B:
#grid.py
import controls.gridcell
#gridcell.py
import controls.combo
#combo.py
import controls.grid
Dies führt jedoch dazu, dass wir vollständige Namen wie "controls.gridcell.cell", "controls.combo.combo", "controls.grid.grid" und so weiter verwenden.
Also meine Frage ist - Gibt es eine andere Möglichkeit, wie dies zu tun (so wäre es verfügbar sein, um kürzere Namen zu verwenden) oder dies ist der einzige Weg, wie man dieses Problem zu lösen?
Entschuldigung, wenn ich etwas vermisse
Vielen Dank an alle