Проверка и показване на версията на 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 или терминал за 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Тя се присвоява на команда.

От 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

Можете също така да използвате модула sys или модула platform на стандартната библиотека, за да получите, проверите и покажете версията на Python, която действително се изпълнява.

Изпълнете скрипта на Python, за да проверите. Скриптът е един и същ за Windows, Mac, Ubuntu и други Linux системи.

Това е полезно за проверка на това коя версия на Python се използва в среда, в която са инсталирани няколко версии на Python, тъй като е възможно да използвате Python 2, когато сте смятали, че използвате Python 3.

Може да се използва и за условно разклоняване, когато искате да превключите между обработката на Python 2 и Python 3.

Различни низове с информация, включително номер на версията: sys.version

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е кортеж, указващ номера на версията.

sys.version_info
Пъзел от пет стойности, указващи номера на версията: major, minor, micro, releaselevel и serial. Всички стойности, с изключение на releaselevel, са цели числа.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След това 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 като низ във формат 'major.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 като кортеж от низове (major, minor, 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

Можете също така да използвате модула sys или модула platform на стандартната библиотека, за да получите, проверите и покажете версията на Python, която действително се изпълнява.

Изпълнете скрипта на Python, за да проверите. Скриптът е един и същ за Windows, Mac, Ubuntu и други Linux системи.

Това е полезно за проверка на това коя версия на Python се използва в среда, в която са инсталирани няколко версии на Python, тъй като е възможно да използвате Python 2, когато сте смятали, че използвате Python 3.

Може да се използва и за условно разклоняване, когато искате да превключите между обработката на Python 2 и Python 3.

Различни низове с информация, включително номер на версията: sys.version

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
Това е кортеж, който показва номера на версията.

sys.version_info
Пъзел от пет стойности, указващи номера на версията: major, minor, micro, releaselevel и serial, всички от които са цели числа, с изключение на releaselevel.
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 като низ във формат 'major.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 като кортеж от низове (major, minor, 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 той е просто кортеж, така че достъпът до елемента по име не е възможен.

Copied title and URL