我必须在Windows服务器上运行Python脚本。我怎么知道我用的是哪个版本的Python,这真的很重要吗?
我在考虑升级到最新版本的Python。
我必须在Windows服务器上运行Python脚本。我怎么知道我用的是哪个版本的Python,这真的很重要吗?
我在考虑升级到最新版本的Python。
python -V
http://docs.python.org/using/cmdline.html#generic-options
——version也可以工作(在2.5版本中引入)
Python 2.5 +:
python --version
Python 2.4 -:
python -c 'import sys; print(sys.version)'
可以使用以下命令获取Python版本
python --version
你甚至可以使用pip freeze as获得安装在venv中的任何软件包的版本:
pip freeze | grep "package name"
或者使用Python解释器:
In [1]: import django
In [2]: django.VERSION
Out[2]: (1, 6, 1, 'final', 0)
虽然问题是“我使用的是哪个版本?”,但这可能并不是你需要知道的全部内容。您可能已经安装了其他版本,这可能会导致问题,特别是在安装其他模块时。这是我粗略地找出安装了什么版本的方法:
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
Use
python -V
or
python --version
注意:请注意python -V命令中的“V”是大写V。python -V(小“V”)将以verbose模式启动python。
对我来说,打开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.
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
>>> 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))"
在带有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)]
简而言之:
在命令提示符中输入python
只需打开命令提示符(Win + R)并键入cmd,然后在命令提示符中输入python将为您提供有关版本的所有必要信息:
如果你安装了Python,那么检查版本号最简单的方法是在命令提示符中输入“Python”。它将显示版本号,以及它是运行在32位还是64位以及其他一些信息。对于某些应用程序,您可能希望使用最新版本,但有时不需要。这取决于您想要安装或使用什么包。
只需创建一个以.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 10上安装了Python 3.7.0。
这是我在命令提示符和Git Bash中工作的方法:
使用实例运行Python并查看版本。
py
只检查您拥有的版本:
py --version
or
py -V # Make sure it is a capital V
注意:python, python——version, python -V, python, python——version, python -V不适合我。
如果你已经在一个REPL窗口中,没有看到带有版本号的欢迎消息,你可以使用help()来查看主版本和次版本:
>>>help()
Welcome to Python 3.6's help utility!
...
在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'
要在Jupyter笔记本中检查Python版本,您可以使用:
from platform import python_version
print(python_version())
获取版本号,如下:
3.7.3
or:
import sys
print(sys.version)
为了获得更多的信息,如
3.7.3 (default, Apr 24 2019, 13:20:13) [MSC v.1915 32 bit (Intel)]
or:
sys.version_info
要获得大版本、小版本和微版本,如
sys.version_info(major=3, minor=7, micro=3, releaselevel='final', serial=0)
在命令提示符中输入Windows中python的位置可能会告诉你安装了多个不同版本的python的位置,假设它们已经添加到你的路径中。
在命令提示符中输入python -V应该会显示版本。
对于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
如果你只是需要专业。次要版本(例如3.6),您可以使用上述,然后选择前3个字符:
PYTHON_VERSION=`python3 --version | awk '{print $2}'`
echo "python3 major.minor: ${PYTHON_VERSION:0:3}"
python3 major.minor: 3.6
or
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
Windows下Python的默认版本和所有已安装版本的路径:
py -0p
一行程序:
❯❯ python -V | cut -c8-
3.11.0
❯❯ ~ python -VV
Python 3.11.0 (main, Oct 24 2022, 18:26:48) [MSC v.1933 64 bit (AMD64)]
❯❯ ~ python --version
Python 3.11.0
❯❯ ~ py --list
-V:3.11 * Python 3.11 (64-bit)
-V:3.10 Python 3.10 (64-bit)
-V:3.9 Python 3.9 (64-bit)
❯❯ ~ py -V
Python 3.11.0
❯❯ ~ py -VV
Python 3.11.0 (main, Oct 24 2022, 18:26:48) [MSC v.1933 64 bit (AMD64)]
❯❯ ~ py --version
Python 3.11.0
❯❯ ~ py -0p
-V:3.11 * W:\Windows 10\Python311\python.exe
-V:3.10 W:\Windows 10\Python310\python.exe
-V:3.9 C:\Program Files\Python39\python.exe
❯❯ ~ python -c 'import sys; print(".".join(sys.version.split(".")[0:2]))'
3.11
❯❯ ~ python -c 'import sys; print(sys.version)'
3.11.0 (main, Oct 24 2022, 18:26:48) [MSC v.1933 64 bit (AMD64)]
❯❯ ~ python -c 'import sys; print((str(sys.version_info.major) +"."+ str(sys.version_info.minor)))'
3.11
❯❯ ~ python -c 'import sys; print(sys.version_info)' sys.version_info(major=3, minor=11, micro=0, releaselevel='final', serial=0)
❯❯ ~ python -c 'import platform; print(platform.python_version()[:-2])'
3.11
❯❯ ~ python -c 'import platform; print(platform.python_version())'
3.11.0
❯❯ ~ python -c 'import platform; print("{0[0]}.{0[1]}".format(platform.python_version_tuple()))'
3.11
❯❯ ~ python -c 'import platform; print(platform.python_version_tuple())'
('3', '11', '0')