Versionsnummern in Python vergleichen
Beim Durchsuchen eines Verzeichnisses, das mehrere Versionen desselben Eies enthält, stellen Sie sicher, dass nur die neueste Version hinzugefügt wird zum sys.path kann aufgrund der nicht intuitiven Reihenfolge der Versionszeichenfolgen beim Vergleich eine Herausforderung darstellen Zeichenfolgen.
Verwendung von „package.version“
Python bietet eine elegante Lösung durch das Modul „packaging.version“, das die Reihenfolge von Versionszeichenfolgen im PEP 440-Stil unterstützt. Dieses Modul bietet die Version-Klasse, mit der Versionen genau verglichen werden können.
from packaging.version import Version # Example: version1 = Version("2.3.1") version2 = Version("10.1.2") print(version1 < version2) # True
Legacy-Methoden
Eine ältere Methode zum Vergleichen von Versionszeichenfolgen ist distutils.version . Es ist jedoch veraltet und entspricht dem ersetzten PEP 386. Es bietet zwei Klassen, LooseVersion und StrictVersion.
from distutils.version import LooseVersion, StrictVersion # LooseVersion compares versions loosely: version1 = LooseVersion("2.3.1") version2 = LooseVersion("10.1.2") print(version1 < version2) # True # StrictVersion is stricter in its comparison: version1 = StrictVersion("2.3.1") version2 = StrictVersion("10.1.2") print(version1 < version2) # True # However, it doesn't recognize valid PEP 440 versions as strict: version1 = StrictVersion("1.3.a4") print(version1) # ValueError: invalid version number '1.3.a4'
Fazit
Beim Vergleich von Versionsnummern in Python package.version bietet eine zuverlässige und elegante Lösung. Es entspricht der aktuellen PEP 440-Spezifikation und bietet eine saubere und übersichtliche API für den Versionsvergleich.
Das obige ist der detaillierte Inhalt vonWie vergleiche ich Versionsnummern in Python zuverlässig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!