Änderungen in der Importanweisung in Python 3: Relative- und Sternimporte verstehen
In Python 3 wurden wesentliche Änderungen an der Importanweisung vorgenommen Verbessern Sie die Klarheit und vermeiden Sie mögliche Unklarheiten. Dieser Artikel geht auf diese Änderungen ein und erklärt ihre Auswirkungen für Programmierer.
Relative Importe
Relative Importe ermöglichen es Ihnen, Module relativ zum aktuellen Modulstandort zu importieren. In Python 2 waren relative Importe innerhalb von Paketen implizit erlaubt. In Python 3 ist diese Funktion jedoch veraltet. Absolute Importe und explizite relative Importe sind jetzt die unterstützten Optionen.
Absolute Importe geben den vollständigen Pfad des Moduls an, wie zum Beispiel:
import mypackage.mymodule
Explizite relative Importe verwenden die . und .. Syntax zur Angabe des relativen Pfads, wie zum Beispiel:
from .mymodule import MyModule
Dieser Pfad gibt an, dass sich mymodule im selben Verzeichnis wie das aktuelle Modul befindet.
Star Imports
Star-Importe, die alle Namen aus einem Modul importieren, waren bisher auf Modulebene und innerhalb von Funktionen in Python 2 erlaubt. In Python 3 ist jedoch star Importe sind nur im Code auf Modulebene zulässig.
In Python 2 könnten Sie beispielsweise das gesamte Mathematikmodul innerhalb einer Funktion importieren:
def sin_degrees(x): from math import * return sin(degrees(x))
In Python 3 ist dies nicht mehr der Fall gültig. Stattdessen können Sie entweder die spezifischen Funktionen importieren, die Sie benötigen:
def sin_degrees(x): from math import sin, degrees return sin(degrees(x))
Oder Sie können das gesamte Modul auf Modulebene importieren:
from math import * def sin_degrees(x): return sin(degrees(x))
Diese Änderungen zielen darauf ab, die Übersichtlichkeit zu verbessern und zu reduzieren Beseitigen Sie Mehrdeutigkeiten und setzen Sie Best Practices bei der Modul- und Paketverwaltung in Python 3 und höher durch.
Das obige ist der detaillierte Inhalt vonWas sind die wichtigsten Änderungen an den Importanweisungen von Python 3 in Bezug auf relative und Sternimporte?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!