我已经安装了哪个版本的Python?


456

我必须在Windows服务器上运行Python脚本。我怎么知道我拥有哪个版本的Python,它真的很重要吗?

我当时想更新到最新版本的Python。


2
是的,(主要)版本号很重要。确保选择与您的python版本匹配的python文档。
安德烈·卡隆


2
相关:是否可以通过保证的方式查看Linux系统上可用/安装的所有Python版本?
丹尼斯

1
@esteban:答案都不是特定于Windows的,标题也不需要标签。回滚。
Wooble 2014年

1
相关线程,可从python脚本/程序检查python版本- 如何检查正在运行脚本的Python版本?
RBT

Answers:


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为这两个选项输出。
2015年

2
您也可以使用其他几个版本的python,类似的内容sudo find / -iname python可能会发现它们。
PatrickT

4
@PatrickT这个职位是有关Windows服务器,须藤并找到蟒蛇会混淆一些新手,因为他们将在窗户不工作
迈克尔B.

13
不要与python -v(小写v)混淆,后者会增加日志记录的详细程度
joelb

3
如果要构建API,请考虑同时允许-v-version别名。显然,大约有500个开发人员必须查找并支持针对SO on Python的答案。这是一个糟糕的设计
P.Brian.Mackey

133

Python 2.5以上版本:

python --version

Python 2.4-:

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

注意:解释器可能不会使用与运行脚本的Python版本相同的Python版本。我认为在某些情况下,默认情况下,您的解释器为Python 3,但您的脚本在Python 2中运行(需要#!python3作为第一行)。
leewz 2014年

1
注意:在Windows上,您需要转到“ Python(命令行)”以输入上述步骤。
HPWD 2014年

这个答案更有用,脚本可以运行或不运行。
AjayKumarBasuthkar

一旦在语句周围使用双引号,这对我就起作用了。python -c "import sys; print sys.version"
S3DEV

你能更新你的答案吗?到Windows?查看其他评论。提前致谢。
Peter Mortensen

123

在Python IDE中,只需复制并粘贴以下代码并运行它(版本将显示在输出区域中):

import sys
print(sys.version)

3
这回答了“我正在运行哪个版本”的问题,该问题解决了我在环境配置方面遇到的一个问题(谢谢)。许多计算机都安装了多个Python版本。
弗朗切斯科·纳波利塔诺

2
这比-v命令有用,因为它可以告诉您已安装的python(32位或64位)的体系结构
Abouzar Nouri

1
这也是一个很好的解决方案,因为它适用于Python 3.x
Ganesh Kamath-

在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

更新了吗?那就是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


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))"


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

注:pythonpython --versionpython -VPythonPython --versionPython -V并没有为我工作。


python -V可以使用Python 2.2.3恢复到Fedora 1。py --version结果command not foundpython --version结果unknown option: --
jww

4

如果您已经在REPL窗口中,但没有看到带有版本号的欢迎消息,则可以使用help()查看主要版本和次要版本:

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

3

要在Jupyter笔记本中检查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

要在Windows上验证Python版本的命令,请在命令提示符下运行以下命令并验证输出:

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

在具有Python 3.6的Windows 10上

    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
这实际上与poy的答案相同。
彼得·莫滕森

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 Mortensen19年


0

打字 where python在Windows上命令提示符可能会告诉您在哪里安装了多个不同版本的python,前提是它们已添加到您的路径中。

键入python -V命令提示符将显示版本。


-1

主要是用法命令:

python -version

要么

python -V
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.