Wie kann „AttributeError: Module Object Missing Attribute' behoben werden, wenn versucht wird, gegenseitige Importe mit Zirkelverweisen durchzuführen?

Mary-Kate Olsen
Freigeben: 2024-10-20 12:38:30
Original
110 Leute haben es durchsucht

How to Resolve

AttributeError: Module Object Missing Attribute

Beim Versuch, zwei Module mit gegenseitigen Referenzen zu importieren, kann dieser Fehler auftreten: „AttributeError: ' Modul'-Objekt hat kein Attribut [Duplikat]". Dies tritt häufig auf, wenn die Modulstrukturen voneinander abhängig sind, was zu einem Zirkelverweis führt.

Erklärung

Im bereitgestellten Code versucht das Modul „a.py“. um „b.py“ zu importieren, und innerhalb von „b.py“ gibt es einen Import von „a.py“. Dadurch entsteht eine zirkuläre Abhängigkeit, die dazu führt, dass Python den „AttributeError“ auslöst.

Lösung

Um dieses Problem zu beheben, vermeiden Sie gegenseitige Importe innerhalb des Moduls der obersten Ebene. Verwenden Sie stattdessen bei Bedarf Funktionen, um Module zu importieren.

Beispiel in Python

Vorher:

<code class="python"># a.py
import b

# b.py
import a</code>
Nach dem Login kopieren

Nachher:

<code class="python"># a.py
def call_b():
  import b
  b.hi()

# b.py
def hi():
  print("hi")</code>
Nach dem Login kopieren

Auf diese Weise importiert „a.py“ nicht mehr „b.py“ auf der obersten Ebene und die zirkuläre Abhängigkeit wird unterbrochen.

Das obige ist der detaillierte Inhalt vonWie kann „AttributeError: Module Object Missing Attribute' behoben werden, wenn versucht wird, gegenseitige Importe mit Zirkelverweisen durchzuführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!