تحقق من إصدار Python واعرضه (مثل sys.version)

اعمال

يوضح هذا القسم كيفية الحصول على إصدار Python المثبت والتحقق منه وعرضه وإصدار Python الذي يتم تشغيله بالفعل في البرنامج النصي.

يوضح هذا القسم كيفية التحقق من سطر الأوامر والرمز ، على التوالي.

  • تحقق من الإصدار وعرضه في سطر الأوامر:--versionو-Vو-VV
  • احصل على الإصدار في الكود:sysوplatform
    • سلسلة من المعلومات المتنوعة ، بما في ذلك رقم الإصدار:sys.version
    • مجموعة عددية لأرقام الإصدارات:sys.version_info
    • سلسلة رقم الإصدار:platform.python_version()
    • مجموعة سلاسل رقم الإصدار:platform.python_version_tuple()

إذا حصلت على رقم الإصدار في الكود ، فيمكنك عرضه بالطباعة () للتحقق منه ، وكذلك تبديل العملية وفقًا للإصدار.

تحقق من الإصدار وعرضه في سطر الأوامر: –version، -V، -VV

يمكنك استخدام موجه الأوامر لنظام التشغيل Windows ، أو محطة طرفية لنظام التشغيل Mac.pythonالأمر أوpython3أمر.--versionاختياري أو-Vخيار تشغيله.

$ python --version
Python 2.7.15

$ python -V
Python 2.7.15

$ python3 --version
Python 3.7.0

$ python3 -V
Python 3.7.0

كما ترى في المثال أعلاه ، اعتمادًا على بيئتك ، قد يكون نظام Python 2.xpythonالأمر ، فإن سلسلة Python 3.x ستكونpython3يتم تعيينه إلى أمر.

من Python 3.6-VVتمت إضافة الخيار.-Vيمكنك رؤية معلومات أكثر تفصيلا من

$ python3 -VV
Python 3.7.0 (default, Jun 29 2018, 20:13:13) 
[Clang 9.1.0 (clang-902.0.39.2)]

الحصول على الإصدار في الكود: sys، platform

يمكنك أيضًا استخدام وحدة نظام المكتبة القياسية أو وحدة النظام الأساسي للحصول على إصدار Python الذي يتم تشغيله بالفعل والتحقق منه وعرضه.

قم بتشغيل البرنامج النصي Python للتحقق. البرنامج النصي هو نفسه لأنظمة Windows و Mac و Ubuntu وأنظمة Linux الأخرى.

هذا مفيد للتحقق من إصدار Python المستخدم في بيئة يتم فيها تثبيت إصدارات متعددة من Python ، حيث من الممكن تشغيل Python 2 عندما تعتقد أنك تستخدم Python 3.

يمكن استخدامه أيضًا للتفرع الشرطي عندما تريد التبديل بين معالجة Python 2 و Python 3.

سلاسل مختلفة من المعلومات ، بما في ذلك رقم الإصدار: sys.version

sys.versionهي سلسلة تشير إلى معلومات متنوعة ، بما في ذلك رقم الإصدار.

الإصدار
سلسلة تشير إلى رقم إصدار مترجم Python بالإضافة إلى معلومات مثل رقم البنية والمترجم المستخدم.
sys — System-specific parameters and functions – Python 3.10.0 Documentation

import sys

print(sys.version)
# 3.7.0 (default, Jun 29 2018, 20:13:13) 
# [Clang 9.1.0 (clang-902.0.39.2)]

print(type(sys.version))
# <class 'str'>

المجموعة العددية لرقم الإصدار: sys.version_info

sys.version_infoهو tuple يشير إلى رقم الإصدار.

sys.version_info
مجموعة مكونة من خمس قيم تشير إلى رقم الإصدار: كبير ، ثانوي ، صغير ، مستوى الإصدار ، ومتسلسل. جميع القيم باستثناء مستوى الإصدار هي أعداد صحيحة.sys — System-specific parameters and functions – Python 3.10.0 Documentation

print(sys.version_info)
# sys.version_info(major=3, minor=7, micro=0, releaselevel='final', serial=0)

print(type(sys.version_info))
# <class 'sys.version_info'>

releaselevelسلسلة ، وجميع العناصر الأخرى أعداد صحيحة.

يمكنك تحديد الفهرس للحصول على القيمة المعنية.

print(sys.version_info[0])
# 3

بدءًا من الإصدار 2.7 لسلسلة Python 2 ومن الإصدار 3.1 لسلسلة Python 3 ، يمكنك الوصول إلى العناصر باستخدام الأسماء (انظرmajorminormicroreleaselevelserialعلى سبيل المثال ، إذا كنت ترغب في الحصول على الإصدار الرئيسي ، فيمكنك استخدام على سبيل المثال ، إذا كنت ترغب في الحصول على الإصدار الرئيسي ، فيمكنك القيام بما يلي

print(sys.version_info.major)
# 3

إذا كنت تريد تحديد ما إذا كنت تقوم بتشغيل Python2 أو Python3 ، فاستخدمsys.version_info.majorيمكنك التحقق من الإصدار الرئيسي في2ثم يمكنك استخدام Python2 ل3ثم بايثون 3.

يظهر أدناه مثال للتبديل بين معالجة Python 2 و Python 3.

if sys.version_info.major == 3:
    print('Python3')
else:
    print('Python2')
# Python3

إذا كنت تريد تبديل العملية في إصدار ثانويsys.version_info.minorتحديد

لاحظ أنه ، كما هو مذكور أعلاه ، يتم دعم الوصول إلى العناصر بالاسم من الإصدار 2.7 و 3.1 ، لذلك إذا كان من المحتمل أن تقوم بتشغيله في إصدار سابق ، فيمكنك استخدامsys.version_info[0]و وsys.version_info[1]المحدد بواسطة الفهرس.

سلسلة رقم الإصدار: platform.python_version ()

platform.python_version()يكون.major.minor.patchlevelدالة تقوم بإرجاع سلسلة في التنسيق

platform.python_version ()
لعرض إصدار Python كسلسلة بتنسيق ‘main.minor.patchlevel’.
platform — Access to underlying platform’s identifying data – Python 3.10.0 Documentation

import platform

print(platform.python_version())
# 3.7.0

print(type(platform.python_version()))
# <class 'str'>

مفيد عندما تريد الحصول على رقم الإصدار كسلسلة بسيطة.

مجموعة سلاسل رقم الإصدار: platform.python_version_tuple ()

platform.python_version_tuple()يكون.(major, minor, patchlevel)دالة تقوم بإرجاع مجموعة من محتويات المجموعة ليست رقمًا ولكنها سلسلة.

platform.python_version_tuple ()
يُرجع إصدار Python على هيئة مجموعة سلاسل (كبيرة ، ثانوية ، patchlevel).
platform — Access to underlying platform’s identifying data – Python 3.10.0 Documentation

print(platform.python_version_tuple())
# ('3', '7', '0')

print(type(platform.python_version_tuple()))
# <class 'tuple'>

sys.version_infoنظرًا لأنه مجرد مجموعة ، على عكسmajorو وminorالوصول إلى العنصر بالاسم غير مسموح به.

تحقق من إصدار Python واعرضه (مثل sys.version)

يوضح هذا القسم كيفية الحصول على إصدار Python المثبت والتحقق منه وعرضه وإصدار Python الذي يتم تشغيله بالفعل في البرنامج النصي.

يوضح هذا القسم كيفية التحقق من سطر الأوامر والرمز ، على التوالي.

  • تحقق من الإصدار وعرضه في سطر الأوامر:--versionو-Vو-VV
  • احصل على الإصدار في الكود: sys، platform
    • سلسلة من المعلومات المتنوعة ، بما في ذلك رقم الإصدار: sys.version
    • مجموعة رقمية لأرقام الإصدارات: sys.version_info
    • سلسلة رقم الإصدار: platform.python_version ()
    • مجموعة سلاسل رقم الإصدار: platform.python_version_tuple ()

إذا حصلت على رقم الإصدار في الكود ، فيمكنك استخدام الوظيفة التالية لعرضه والتحقق منه.print()يمكنك أيضًا تبديل العملية اعتمادًا على الإصدار.

تحقق من الإصدار وعرضه في سطر الأوامر: –version، -V، -VV

يمكنك التحقق من الإصدار عن طريق تنفيذ الأمر التالي من موجه الأوامر على Windows أو Terminal على Mac.

  • أمر
    • python
    • python3
  • خيار
    • --version
    • -V
$ python --version
Python 2.7.15

$ python -V
Python 2.7.15

$ python3 --version
Python 3.7.0

$ python3 -V
Python 3.7.0

كما هو موضح في المثال أعلاه ، اعتمادًا على البيئة ، يتم تعيين أنظمة Python 2.x لأمر python ويتم تعيين أنظمة Python 3.x لأمر python3.

تمت إضافة الخيار -VV في Python 3.6. يعرض الخيار -VV معلومات أكثر تفصيلاً من الخيار -V.

$ python3 -VV
Python 3.7.0 (default, Oct 21 2020, 10:23:15) 
[Clang 9.1.0 (clang-902.0.39.2)]

الحصول على الإصدار في الكود: sys، platform

يمكنك أيضًا استخدام وحدة نظام المكتبة القياسية أو وحدة النظام الأساسي للحصول على إصدار Python الذي يتم تشغيله بالفعل والتحقق منه وعرضه.

قم بتشغيل البرنامج النصي Python للتحقق. البرنامج النصي هو نفسه لأنظمة Windows و Mac و Ubuntu وأنظمة Linux الأخرى.

هذا مفيد للتحقق من إصدار Python المستخدم في بيئة يتم فيها تثبيت إصدارات متعددة من Python ، حيث من الممكن تشغيل Python 2 عندما تعتقد أنك تستخدم Python 3.

يمكن استخدامه أيضًا للتفرع الشرطي عندما تريد التبديل بين معالجة Python 2 و Python 3.

سلاسل مختلفة من المعلومات ، بما في ذلك رقم الإصدار: sys.version

sys.version
هذه سلسلة تشير إلى معلومات متنوعة ، بما في ذلك رقم الإصدار.

الإصدار
سلسلة تشير إلى رقم إصدار مترجم Python بالإضافة إلى معلومات مثل رقم البنية والمترجم المستخدم.
sys — System-specific parameters and functions – Python 3.10.0 Documentation

import sys

print(sys.version)
# 3.7.0 (default, Oct 21 2020, 10:23:15) 
# [Clang 9.1.0 (clang-902.0.39.2)]

print(type(sys.version))
# <class 'str'>

المجموعة العددية لرقم الإصدار: sys.version_info

sys.version_info
هذا هو tuple يشير إلى رقم الإصدار.

sys.version_info
مجموعة مكونة من خمس قيم تشير إلى رقم الإصدار: الكبرى والثانوية والجزئية ومستوى الإصدار والمسلسل ، وكلها أعداد صحيحة باستثناء مستوى الإصدار.
sys — System-specific parameters and functions – Python 3.10.0 Documentation

print(sys.version_info)
# sys.version_info(major=3, minor=7, micro=0, releaselevel='final', serial=0)

print(type(sys.version_info))
# <class 'sys.version_info'>

releaselevel
هذه سلسلة وكل العناصر الأخرى أعداد صحيحة.

يمكنك تحديد الفهرس للحصول على القيمة المعنية.

print(sys.version_info[0])
# 3

اعتبارًا من الإصدار 2.7 لسلسلة Python 2 والإصدار 3.1 لسلسلة Python 3 ، يتم أيضًا دعم الوصول إلى العنصر التالي بالاسم.

  • major
  • minor
  • micro
  • releaselevel
  • serial

على سبيل المثال ، إذا كنت ترغب في الحصول على الإصدار الرئيسي ، فقم بما يلي

print(sys.version_info.major)
# 3

إذا كنت تريد تحديد ما إذا كنت تستخدم Python 2 أو Python 3 ، فيمكنك استخدام الكود التالي للتحقق من الإصدار الرئيسي.
sys.version_info.majorإذا كانت القيمة المرجعة هي 2 ، فهي Python2 ، وإذا كانت 3 ، فهي Python3.

يظهر أدناه مثال للتبديل بين معالجة Python 2 و Python 3.

if sys.version_info.major == 3:
    print('Python3')
else:
    print('Python2')
# Python3

إذا كنت تريد تبديل العملية بإصدار ثانوي ، فحدد القيم التالية.
sys.version_info.minor

لاحظ أنه ، كما هو مذكور أعلاه ، يتم دعم الوصول إلى العنصر بالاسم من الإصدار 2.7 و 3.1 ، لذلك إذا كان من الممكن تنفيذه في الإصدارات السابقة ، فحدده بالفهرس على النحو التالي.

  • sys.version_info[0]
  • sys.version_info[1]

سلسلة رقم الإصدار: platform.python_version ()

platform.python_version () هي دالة تقوم بإرجاع سلسلة في تنسيق major.minor.patchlevel.

platform.python_version ()
لعرض إصدار Python كسلسلة بتنسيق ‘main.minor.patchlevel’.
platform — Access to underlying platform’s identifying data – Python 3.10.0 Documentation

import platform

print(platform.python_version())
# 3.7.0

print(type(platform.python_version()))
# <class 'str'>

مفيد عندما تريد الحصول على رقم الإصدار كسلسلة بسيطة.

مجموعة سلاسل رقم الإصدار: platform.python_version_tuple ()

platform.python_version_tuple () هي دالة تقوم بإرجاع مجموعة (كبيرة ، ثانوية ، patchlevel).
محتويات المجموعة ليست رقمًا ، ولكنها سلسلة.

platform.python_version_tuple ()
يُرجع إصدار Python على هيئة مجموعة سلاسل (كبيرة ، ثانوية ، patchlevel).
platform — Access to underlying platform’s identifying data – Python 3.10.0 Documentation

print(platform.python_version_tuple())
# ('3', '7', '0')

print(type(platform.python_version_tuple()))
# <class 'tuple'>

على عكس sys.version_info ، فهو مجرد مجموعة ، لذا لا يمكن الوصول إلى العنصر بالاسم.