ChatGPT解决这个技术问题 Extra ChatGPT

我安装了哪个版本的 Python?

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

我正在考虑更新到最新版本的 Python。

是的,(主要)版本号很重要。确保选择与您的 python 版本匹配的 python 文档。
如果您还想了解哪些 Python 与 .py 文件相关联,您可能对 How to write a batch file showing path to executable and version of Python handling Python scripts on Windows? 中的批处理文件感兴趣
相关:是否有保证的方法可以查看 Linux 系统上可用/安装的所有 Python 版本?
@esteban:没有一个答案是特定于 Windows 的,而且标题也不需要标签。回滚。
从 python 脚本/程序检查 python 版本的相关线程 - How do I check what version of Python is running my script?

D
Dov
python -V

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

--version 也可以工作(在 2.5 版中引入)


在我的 Windows 8.1 Pro 机器上,Python 2.7.10 为 -V--version 输出 Python 2.7.10;和 Python 3.4.3 同样为这两个选项输出 Python 3.4.3
你也可以有几个其他版本的 python,像 sudo find / -iname python 这样的东西可能会发现它们。
@PatrickT 这篇文章是关于 windows 服务器上的 python,sudo 和 find 会混淆一些新手,因为它们不能在 windows 上工作
不要与 python -v(小写 v)混淆,后者会增加日志记录的详细程度
如果您正在构建 API,请考虑同时允许 -v-version 别名。显然,大约 500 名开发人员不得不查看这个并在 SO 上支持 Python 的这个答案。这是一个糟糕的设计
P
Peter Mortensen

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

import sys
print(sys.version)

这回答了“我正在运行什么版本”的问题,它解决了我在环境配置方面遇到的问题(谢谢)。许多计算机都安装了多个 Python 版本。
这比 -v 命令更有用,因为它告诉已安装 python 的体系结构(32 位或 64 位)
这也是一个很好的解决方案,因为它适用于 Python 3.x
在 Anaconda Spyder IDE 上运行良好。或者,在正常的 Anaconda Prompt 上,可以使用 python --version
但这是在 Windows 服务器上。可能没有安装 IDE。
m
mcandre

Python 2.5+:

python --version

Python 2.4-:

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

注意:解释器使用的 Python 版本可能与运行脚本的版本不同。我认为在某些情况下,默认情况下,您的解释器是 Python 3,但您的脚本在 Python 2 中运行(需要 #!python3 作为第一行)。
注意:在 Windows 上,您需要进入“Python(命令行)”才能进入上述步骤。
这个答案更有用,脚本将获得运行或不运行的能力。
一旦我在语句周围使用双引号,这对我有用。 python -c "import sys; print sys.version"
你能更新你的答案吗?到 Windows?见其他评论。提前致谢。
E
Eric Leschinski

在命令提示符下键入:

python -V

或者如果你有 pyenv:

pyenv versions

P
Peter Mortensen

尽管问题是“我使用的是哪个版本?”,但这实际上可能并不是您需要知道的所有内容。您可能安装了其他版本,这可能会导致问题,尤其是在安装附加模块时。这是我找出安装了哪些版本的粗略方法:

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

更新了b?那就是Linux。问题是关于 Windows 服务器的。
p
poy

当我打开 Python (command line) 时,它告诉我的第一件事就是版本。


这应该是 Windows 的正确答案。我用“python”尝试了几个小时,但没有奏效。然后我输入了“Python”,它起作用了。 +1 用于正确提供命令。
您的意思是按 Windows 键并输入“Python”吗?或者是其他东西?
d
ddzzbbwwmm
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

m
mar10

简而言之:

在命令提示符下键入 python

只需打开命令提示符 (Win + R) 并输入 cmd,然后在命令提示符中输入 python 即可为您提供有关版本的所有必要信息:

https://i.stack.imgur.com/K5kSC.png


这实际上与 poy's answer 相同。
这实际上把我带到了 MS Store for Python。
P
Peter Mortensen

我在 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: --
B
Baczek
>>> 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))"

P
Peter Mortensen

利用

python -V

或者

python --version

注意:请注意,python -V 命令中的“V”是大写 V。python -v(小“v”)将以详细模式启动 Python。


P
Peter Mortensen

您可以使用以下命令获取 Python 的版本

python --version

您甚至可以使用 pip freeze 获取安装在 venv 中的任何软件包的版本:

pip freeze | grep "package name"

或者使用 Python 解释器:

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

n
nucsit026

要在 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)

S
Sam

在带有 Python 3.9.1 的 Windows 10 上,使用命令行:

    py -V

Python 3.9.1

    py --version

Python 3.9.1

    py -VV

Python 3.9.1 (tags/v3.9.1:1e5d33e, Dec  7 2020, 17:08:21) [MSC v.1927 64 bit 
(AMD64)]

我已针对版本 3.9.1 进行了更新,因为 Windows 10 中的先前语法现在将您带到 Microsoft 商店中的 Python 链接,而不是显示版本详细信息(可以在此处更改 superuser.com/questions/1437590/…)。最初的答案是 python 3.6,当前版本是 3.9.1。此后语法已从 python 更改为 py
-V 也需要大写,否则命令行只会打开 python。如果发生这种情况,只需 Ctrl+Z 和 Enter 即可退出。
P
Peter Mortensen

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

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

P
Pro Q

在 Windows 上的命令提示符中键入 where python 可能会告诉您安装了多个不同版本的 python,假设它们已添加到您的路径中。

在命令提示符中键入 python -V 应显示版本。


S
Sagar_c_k

如果您安装了 Python,那么检查版本号的最简单方法是在命令提示符下键入“python”。它将显示版本号以及它是在 32 位还是 64 位上运行以及其他一些信息。对于某些应用程序,您可能希望拥有最新版本,有时则不需要。这取决于您要安装或使用的软件包。


这实际上与 poy's answer 相同。
P
Peter Mortensen

要在 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'

P
Peter Mortensen

对我来说,打开 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.

这是在 Windows 上吗?什么Python实现? Anaconda? (由 editing your answer 回复,不在评论中(视情况而定))
P
Peter Mortensen

只需创建一个以 .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。
K
KittoMi

主要使用命令:

python -version

或者

python -V

G
Giorgos Myrianthous

对于 bash 脚本,这将是最简单的方法:

# In the form major.minor.micro e.g. '3.6.8'
# The second part excludes the 'Python ' prefix 
PYTHON_VERSION=`python3 --version | awk '{print $2}'`
echo "python3 version: ${PYTHON_VERSION}"
python3 version: 3.6.8

如果您只需要 major.minor 版本(例如 3.6),您可以使用上面的,然后选择前 3 个字符:

PYTHON_VERSION=`python3 --version | awk '{print $2}'`
echo "python3 major.minor: ${PYTHON_VERSION:0:3}"
python3 major.minor: 3.6

或者

PYTHON_VERSION=`python3 -c 'import sys; print(str(sys.version_info[0])+"."+str(sys.version_info[1]))'`
echo "python3 major.minor: ${PYTHON_VERSION}"
python3 major.minor: 3.6

S
Szczerski

Windows 上默认的 Python 版本和所有已安装版本的路径:

py -0p

P
Peter Mortensen

打开命令提示符窗口(按 Windows + R,输入 cmd,然后按 Enter)。

输入 python.exe


这实际上与 poy's answer 相同。