So vergleichen Sie Python-Versionszeichenfolgen elegant
Bei der Arbeit mit Python-Paketen ist es oft notwendig, Versionsnummern zu vergleichen. Der Vergleich von String-Versionen kann jedoch zu falschen Ergebnissen führen, da die String-Reihenfolge möglicherweise nicht der tatsächlichen Versionsreihenfolge entspricht.
Um dieses Problem zu beheben, stellt Python die Klasse „packaging.version.Version“ bereit, die PEP 440 unterstützt Stil der Reihenfolge der Versionszeichenfolgen. Diese Methode ermöglicht den genauen Vergleich von Versionszeichenfolgen unter Berücksichtigung von Sonderzeichen und Vorabversionskennungen.
Die Verwendung von Version ist unkompliziert:
from packaging.version import Version version1 = Version("2.3.1") version2 = Version("10.1.2") print(version1 < version2) # True
Im Gegensatz zum nativen Zeichenfolgenvergleich wird die Version korrekt angezeigt erkennt, dass „2.3.1“ kleiner als „10.1.2“ ist.
Eine weitere Option, wenn auch veraltet, ist distutils.version. Obwohl es nicht dokumentiert ist und dem veralteten PEP 386 entspricht, kann es dennoch auftreten:
from distutils.version import LooseVersion version1 = LooseVersion("2.3.1") version2 = LooseVersion("10.1.2") print(version1 < version2) # True
Distutils.version weist jedoch Einschränkungen auf und verarbeitet PEP 440-Versionen nicht korrekt.
Zusammenfassend lässt sich sagen, dass Sie zum genauen und pythonischen Vergleichen von Python-Versionszeichenfolgen „packaging.version.Version.
“ verwendenDas obige ist der detaillierte Inhalt vonWie vergleiche ich Python-Versionszeichenfolgen genau?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!