Heim >Backend-Entwicklung >Python-Tutorial >Wie haben sich die Importanweisungen von Python 3 gegenüber Python 2 geändert?

Wie haben sich die Importanweisungen von Python 3 gegenüber Python 2 geändert?

Linda Hamilton
Linda HamiltonOriginal
2024-11-28 16:13:15810Durchsuche

How Have Python 3 Import Statements Changed from Python 2?

Entwicklung der Importanweisungen in Python 3

Python 3 hat wesentliche Änderungen an der Importanweisung eingeführt, um Klarheit zu schaffen und Mehrdeutigkeiten zu vermeiden.

Relative Importe

In Python 2, implizite relative Importe innerhalb von Paketen wurden häufig verwendet. Dies bedeutete, dass Module aus anderen Modulen innerhalb desselben Pakets importiert werden konnten, ohne den Pfad anzugeben. Zum Beispiel:

# Python 2
from my_module import MyClass

In Python 3 werden relative Importe jedoch nicht mehr unterstützt. Stattdessen müssen explizite Importe oder absolute Importe verwendet werden. Dies trägt dazu bei, Verwirrung darüber zu vermeiden, ob ein Import relativ oder absolut ist.

# Python 3
from .my_module import MyClass

Star-Importe

Star-Importe, die alle Symbole aus einem Modul mit * importieren, waren in Python 2 sowohl auf Modul- als auch auf Funktionsebene zulässig. In Python 3 sind Star-Importe jedoch nur auf Modulebene zulässig. Dies trägt dazu bei, die Lesbarkeit zu verbessern und potenzielle Namespace-Konflikte zu reduzieren.

In Python 2 war beispielsweise Folgendes zulässig:

# Python 2
def my_function():
    from math import *

In Python 3 muss dies geändert werden in:

# Python 3
def my_function():
    from math import sin, degrees

Durch das Verständnis dieser Änderungen in Importanweisungen können Entwickler sicherstellen, dass ihr Code mit Python 3 kompatibel ist und Unklarheiten und potenzielle Fehler vermieden werden.

Das obige ist der detaillierte Inhalt vonWie haben sich die Importanweisungen von Python 3 gegenüber Python 2 geändert?. 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