我们的应用程序必须使用Python和Django。所以我有两个版本的Python, 2.6和2.7。现在我已经安装了Django。我可以成功地运行测试Django的示例应用程序。但是我如何确定Django使用的是2.6还是2.7版本,以及Django使用的模块是什么版本呢?


当前回答

进入Django项目主目录,执行以下操作:

./manage.py --version

其他回答

Python版本由Django版本支持

Django version        Python versions
----------------------------------------
1.0                   2.3, 2.4, 2.5, 2.6
1.1                   2.3, 2.4, 2.5, 2.6
1.2                   2.4, 2.5, 2.6, 2.7
1.3                   2.4, 2.5, 2.6, 2.7
1.4                   2.5, 2.6, 2.7
1.5                   2.6.5, 2.7 and 3.2.3, 3.3 (experimental)
1.6                   2.6.5, 2.7 and 3.2.3, 3.3
1.11                  2.7, 3.4, 3.5, 3.6, 3.7 (added in 1.11.17)
2.0                   3.4, 3.5, 3.6, 3.7
2.1, 2.2              3.5, 3.6, 3.7

要验证Python可以看到Django,输入Python from你的shell。然后在Python提示符下,尝试导入Django:

>>> import django
>>> print(django.get_version())
2.1
>>> django.VERSION
(2, 1, 4, 'final', 0)

Django 1.5支持Python 2.6.5及更高版本。

如果你在Linux系统下,想要检查你正在使用的Python版本,从命令行运行Python -V。

如果你想查看Django版本,打开Python控制台并输入

>>> import django
>>> django.VERSION
(2, 0, 0, 'final', 0)

正如你所说的,你有两个版本的Python,我假设它们在不同的虚拟环境(例如venv)或Conda环境中。

当您安装Django时,它可能只在一个环境中。你可能有两个不同的Django版本,每个版本对应一个python版本。

在Unix/Mac终端,你可以检查你的Python版本,如下所示:

$ python --version

如果你想知道来源:

$ which python

检查Django的版本:

$ python -m django --version

没有Python也可以做到。在Django目录中输入:

cat __init__.py | grep VERSION

你会得到这样的结果:

VERSION = (1, 5, 5, 'final', 0)

Django将使用PYTHONPATH环境变量指定的Python版本。您可以在shell中使用echo $PYTHONPATH来确定将使用哪个版本。

Django使用的模块版本将是安装在PYTHONPATH指定的Python版本下的模块版本。