كيفية مقارنة سلاسل إصدار بايثون بشكل أنيق
عند العمل مع حزم بايثون، غالبًا ما يكون من الضروري مقارنة أرقام الإصدارات. ومع ذلك، يمكن أن تؤدي مقارنة إصدارات السلسلة إلى نتائج غير صحيحة، حيث قد لا يتوافق ترتيب السلسلة مع ترتيب الإصدار الفعلي.
لمعالجة هذه المشكلة، توفر بايثون فئة Packaging.version.Version، التي تدعم PEP 440. أسلوب ترتيب سلسلة الإصدار. تسمح هذه الطريقة بإجراء مقارنة دقيقة لسلاسل الإصدار، مع الأخذ في الاعتبار الأحرف الخاصة ومعرفات ما قبل الإصدار.
استخدام الإصدار سهل ومباشر:
from packaging.version import Version version1 = Version("2.3.1") version2 = Version("10.1.2") print(version1على عكس مقارنة السلسلة الأصلية، يتعرف الإصدار بشكل صحيح على أن "2.3.1" أقل من "10.1.2".
هناك خيار آخر، على الرغم من إهماله، هو distutils.version. على الرغم من أنه غير موثق ويتوافق مع PEP 386 القديم، إلا أنه من الممكن مواجهته:
from distutils.version import LooseVersion version1 = LooseVersion("2.3.1") version2 = LooseVersion("10.1.2") print(version1ومع ذلك، فإن distutils.version له قيود ولا يتعامل مع إصدارات PEP 440 بشكل صحيح.
باختصار، لمقارنة سلاسل إصدار Python بدقة وبلغة Pythonic الطريقة، استخدم package.version.Version.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3