Яку версію Python я встановив?


457

Мені потрібно запустити скрипт Python на сервері Windows. Як я можу знати, яку версію Python у мене є, і чи це навіть насправді має значення?

Я думав про оновлення до останньої версії Python.


2
Так, важливий номер основної версії. Переконайтеся, що ви обрали документацію python, яка відповідає вашій версії python.
Андре Карон

Якщо ви також хочете дізнатись, що Python пов’язано з .pyфайлами, які можуть вас зацікавити в пакетному файлі в розділі Як написати пакетний файл із зазначенням шляху до виконуваної версії та версії Python, що обробляє сценарії Python у Windows?
Пьотр Доброгост

2
Пов’язано: Чи є гарантований спосіб перегляду всіх версій Python, які доступні / встановлені у вашій системі Linux?
Денніс

1
@esteban: Жоден із відповідей не стосується Windows, а заголовки так і не потрібні. Відкотився назад.
Wooble

1
Пов’язаний потік для перевірки версії python із сценарію / програми python - Як я можу перевірити, у якій версії Python працює мій сценарій?
RBT

Відповіді:


618
python -V

http://docs.python.org/using/cmdline.html#generic-options

--version може також працювати (введено у версії 2.5)


3
На моїй машині Windows 8.1 Pro Python 2.7.10 виводить Python 2.7.10для -Vта --version; і Python 3.4.3 аналогічно виводить і Python 3.4.3для обох варіантів.
J0e3gan

2
у вас також може бути кілька інших версій python, щось подібне sudo find / -iname python, можливо, виявить їх.
PatrickT

4
@PatrickT в цьому дописі йшлося про python на Windows сервері, sudo та find знайдуть збентеження деяких новачків, оскільки вони не працюватимуть на Windows
Michael B.

13
не плутати з python -v(малі v), що збільшує багатослівність ведення журналу
Joelb

3
Якщо ви будуєте API, будь ласка, подумайте про дозвіл -vі -versionпсевдонімів. Очевидно, що близько 500 розробників повинні були знайти це і підтвердити цю відповідь на Python на SO. Це погана конструкція
P.Brian.Mackey

133

Python 2.5+:

python --version

Python 2.4-:

python -c 'import sys; print(sys.version)'

Примітка. Інтерпретатор може не використовувати ту саму версію Python, як та, що виконує ваші сценарії. Я думаю, що є деякі обставини, коли за замовчуванням ваш інтерпретатор - Python 3, але ваші сценарії виконуються в Python 2 (потрібно #!python3як перший рядок).
leewz

1
ПРИМІТКА. У Windows вам потрібно перейти до "Python (командного рядка)", щоб ввести вказані вище дії.
HPWD

Ця відповідь корисніша, сценарій отримав би здатність, запускати чи ні.
AjayKumarBasuthkar

Це працювало для мене, коли я використовував подвійні лапки навколо твердження. python -c "import sys; print sys.version"
S3DEV

Чи можете ви оновити відповідь wrt. до Windows? Дивіться інші коментарі. Заздалегідь спасибі.
Пітер Мортенсен

123

У програмі ID ID Python просто скопіюйте та вставте наступний код та запустіть його (версія з’явиться у вихідній області):

import sys
print(sys.version)

3
Це відповідає на питання "в якій версії я працюю", яка вирішила проблему, з якою у мене виникли конфігурації середовища (спасибі). На багатьох комп'ютерах встановлено кілька версій Python.
Франческо Наполітано

2
Це корисніше, ніж команда -v, оскільки вона розповідає про архітектуру встановленого пітона (32 біт або 64 біт)
Abouzar Nouri

1
Це також хороше рішення, оскільки воно працює для Python 3.x
Ganesh Kamath - 'Code Frenzy'

Добре працює на Anaconda Spyder IDE. Крім того, у звичайному Anaconda Prompt можна використовувати python --version
vinsinraw

Але це на сервері Windows. Можливо, не встановлено IDE.
Пітер Мортенсен


24

Коли я відкриваю Python (command line)перше, що мені підказує - це версія.


1
Це має бути правильною відповіддю для Windows. Я годинами пробував "python", але не вийшло. Потім я набрав "Python", який працював. +1 для правильного надання команди.
Наташа

Ви маєте на увазі натискання клавіші Windows та введення тексту "Python" ? Або щось інше?
Пітер Мортенсен

23

Хоча питання "яку версію я використовую?", Це насправді може бути не все, що потрібно знати. У вас можуть бути встановлені інші версії, що може спричинити проблеми, особливо при установці додаткових модулів. Це мій приблизний підхід до з'ясування версій, які встановлені:

updatedb                  # Be in root for this
locate site.py            # All installations I've ever seen have this

Вихід для однієї установки Python повинен виглядати приблизно так:

/usr/lib64/python2.7/site.py
/usr/lib64/python2.7/site.pyc
/usr/lib64/python2.7/site.pyo

З декількох установок буде виходити щось подібне:

/root/Python-2.7.6/Lib/site.py
/root/Python-2.7.6/Lib/site.pyc
/root/Python-2.7.6/Lib/site.pyo
/root/Python-2.7.6/Lib/test/test_site.py
/usr/lib/python2.6/site-packages/site.py
/usr/lib/python2.6/site-packages/site.pyc
/usr/lib/python2.6/site-packages/site.pyo
/usr/lib64/python2.6/site.py
/usr/lib64/python2.6/site.pyc
/usr/lib64/python2.6/site.pyo
/usr/local/lib/python2.7/site.py
/usr/local/lib/python2.7/site.pyc
/usr/local/lib/python2.7/site.pyo
/usr/local/lib/python2.7/test/test_site.py
/usr/local/lib/python2.7/test/test_site.pyc
/usr/local/lib/python2.7/test/test_site.pyo

updatedb? Це Linux. Питання стосувалося сервера Windows.
Пітер Мортенсен

11
In [1]: import sys

In [2]: sys.version
2.7.11 |Anaconda 2.5.0 (64-bit)| (default, Dec  6 2015, 18:08:32) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)]

In [3]: sys.version_info
sys.version_info(major=2, minor=7, micro=11, releaselevel='final', serial=0)

In [4]: sys.version_info >= (2,7)
Out[4]: True

In [5]: sys.version_info >= (3,)
Out[5]: False

10

Коротко:

Введіть pythonкомандний рядок

Просто відкрийте командний рядок ( Win+ R) і введіть, cmdі в командному рядку тоді введення pythonдасть вам всю необхідну інформацію щодо версій:

Версія Python


Це практично ідентично відповіді Поя .
Пітер Мортенсен

7
>>> import sys; print('{0[0]}.{0[1]}'.format(sys.version_info))
3.5

тому з командного рядка:

python -c "import sys; print('{0[0]}.{0[1]}'.format(sys.version_info))"

7

Використовуйте

python -V

або

python --version

ПРИМІТКА: Зверніть увагу, що "V" в python -Vкоманді є великим V python -v(мале "v") запустить Python у багатослівному режимі.


Чи буде він працювати на сервері Windows?
Пітер Мортенсен

5

Отримати версію Python можна за допомогою наступної команди

python --version

Ви навіть можете отримати версію будь-якого пакета, встановленого в venv, використовуючи pip freeze:

pip freeze | grep "package name"

Або за допомогою інтерпретатора Python як:

In [1]: import django
In [2]: django.VERSION
Out[2]: (1, 6, 1, 'final', 0)

5

У мене на Windows 10 є Python 3.7.0.

Це те, що працювало для мене в командному рядку та Git Bash :

Щоб запустити Python і перевірити версію:

py

Щоб лише перевірити, яка у вас версія:

py --version

або

py -V    # Make sure it is a capital V

Примітка: python, python --version, python -V, Python, Python --version, Python -Vне працює для мене.


python -Vпрацює до Fedora 1 з Python 2.2.3. py --versionрезультати в command not found. python --versionрезультати в unknown option: --.
jww

4

Якщо ви вже знаходитесь у вікні REPL і не бачите вітального повідомлення з номером версії, ви можете скористатися довідкою (), щоб переглянути основну та другорядну версію:

>>>help()
Welcome to Python 3.6's help utility!
...

3

Щоб перевірити версію Python у ноутбуці Юпітера, ви можете використовувати:

from platform import python_version
print(python_version())

щоб отримати номер версії, як:

3.7.3

або:

import sys
print(sys.version)

щоб отримати більше інформації, як

3.7.3 (default, Apr 24 2019, 13:20:13) [MSC v.1915 32 bit (Intel)]

або:

sys.version_info

отримати основні, мінорні та мікро версії, як

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

2

Просто створіть файл, що закінчується .py, і вставте код нижче в нього та запустіть його.

#!/usr/bin/python3.6

import platform
import sys

def linux_dist():
  try:
    return platform.linux_distribution()
  except:
    return "N/A"

print("""Python version: %s
dist: %s
linux_distribution: %s
system: %s
machine: %s
platform: %s
uname: %s
version: %s
""" % (
sys.version.split('\n'),
str(platform.dist()),
linux_dist(),
platform.system(),
platform.machine(),
platform.platform(),
platform.uname(),
platform.version(),
))

Якщо в системі встановлено кілька версій інтерпретатора Python, виконайте наступні команди.

У Linux запустіть у терміналі:

ll /usr/bin/python*

У Windows запустіть командний рядок:

dir %LOCALAPPDATA%\Programs\Python

Питання стосувалося Windows, а не Linux.
Пітер Мортенсен

2

Щоб перевірити версію Python для команд у Windows, запустіть такі команди в командному рядку та перевірте вихід:

c:\> python -V
Python 2.7.16

c:\> py -2 -V
Python 2.7.16

c:\> py -3 -V
Python 3.7.3

Також, щоб побачити конфігурацію папки для кожної версії Python, виконайте такі команди:

For Python 2, 'py -2 -m site'
For Python 3, 'py -3 -m site'

1

У Windows 10 з Python 3.6

    python

Python 3.6.0a4 (v3.6.0a4:017cf260936b, Aug 16 2016, 00:59:16) [MSC v.1900 64 bit (AMD64)] on win32


    python -V

Python 3.6.0a4


    python --version

Python 3.6.0a4

1

Якщо у вас встановлений Python, тоді найпростіший спосіб перевірити номер версії - це ввівши "python" у командному рядку. Він покаже вам номер версії, і якщо він працює на 32-бітному або 64-бітному та іншу інформацію. Для деяких програм ви хочете мати останню версію, а іноді ні. Це залежить від того, які пакунки ви хочете встановити або використовувати.


1
Це практично ідентично відповіді Поя .
Пітер Мортенсен

1

Для мене відкриття CMD і запуск

py

покаже щось подібне

Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:43:06) [MSC v.1600 32 bit (Intel)] on win32

Type "help", "copyright", "credits" or "license" for more information.

1
Це в Windows? Яка реалізація Python? Анаконда ? (Відповідь, відредагувавши свою відповідь , а не тут у коментарях (якщо це доречно))
Peter Mortensen


0

Введення where pythonWindows у командний рядок може повідомити, де встановлено кілька різних версій python, якщо припустити, що вони були додані на ваш шлях.

Введення python -Vв командний рядок має відображати версію.


-1

Здебільшого команди використання:

python -version

Або

python -V
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.