Comment comparer élégamment les chaînes de versions de Python
Lorsque vous travaillez avec des packages Python, il est souvent nécessaire de comparer les numéros de version. Cependant, comparer les versions de chaînes peut conduire à des résultats incorrects, car l'ordre des chaînes peut ne pas correspondre à l'ordre réel des versions.
Pour résoudre ce problème, Python fournit la classe packaging.version.Version, qui prend en charge le PEP 440. style d’ordre des chaînes de version. Cette méthode permet une comparaison précise des chaînes de version, en tenant compte des caractères spéciaux et des identifiants de version préliminaire.
L'utilisation de la version est simple :
from packaging.version import Version version1 = Version("2.3.1") version2 = Version("10.1.2") print(version1Contrairement à la comparaison de chaînes native, Version reconnaît correctement que "2.3.1" est inférieur à "10.1.2".
Une autre option, bien que obsolète, est distutils.version. Bien qu'il ne soit pas documenté et soit conforme au PEP 386 obsolète, il peut toujours être rencontré :
from distutils.version import LooseVersion version1 = LooseVersion("2.3.1") version2 = LooseVersion("10.1.2") print(version1Cependant, distutils.version a des limites et ne gère pas correctement les versions PEP 440.
En résumé, pour comparer les chaînes de version Python avec précision et de manière Pythonique façon, utilisez packaging.version.Version.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3