为了让 Django 正常工作,我做了一些从 python 2.6.5 升级到 python 2.7.11 的实验。然后我不得不卸载 python 2.7.11 并返回到 python 2.6.5(与其他项目的兼容性问题)。现在,当我尝试使用 pip install django==1.2.1
安装 django 1.2.1 时,出现此错误:
C:\workspace\internal\trunk\ut_pr_01\src>pip install django==1.2.1
Downloading/unpacking django==1.2.1 Running setup.py egg_info for
package django
Traceback (most recent call last):
File "<string>", line 16, in <module>
File "c:\users\maxim\appdata\local\temp\pip-build\django\setup.py", line
32, in <module>
version = __import__('django').get_version()
File "c:\users\maxim\appdata\local\temp\pip-build\django\django\__init__.py",
line 3, in <module>
from django.utils.version import get_version
File "c:\users\maxim\appdata\local\temp\pip-build\django\django\utils\version.py",
line 7, in <module>
from django.utils.lru_cache import lru_cache
File "c:\users\maxim\appdata\local\temp\pip-build\django\django\utils\lru_cache.py",
line 28
fasttypes = {int, str, frozenset, type(None)},
^
SyntaxError: invalid syntax
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 16, in <module>
File "c:\users\maxim\appdata\local\temp\pip-build\django\setup.py",
line 32, in <module>
version = __import__('django').get_version()
File
"c:\users\maxim\appdata\local\temp\pip-build\django\django\__init__.py",
line 3, in <module>
from django.utils.version import get_version
File
"c:\users\maxim\appdata\local\temp\pip-build\django\django\utils\version.py",
line 7, in <module>
from django.utils.lru_cache import lru_cache
File
"c:\users\maxim\appdata\local\temp\pip-build\django\django\utils\lru_cache.py",
line 28
fasttypes = {int, str, frozenset, type(None)},
^
SyntaxError: invalid syntax
---------------------------------------- Command python setup.py egg_info failed with error code 1 in
c:\users\maxim\appdata\local\temp\pip-build\django Storing complete
log in C:\Users\Maxim\pip\pip.log
似乎 python 的版本是导致问题的原因,但之前我安装了具有相同 pip 和相同 python 版本的任何 django。
我目前的环境: 点子 1.2.1, python 2.6.5, windows 10 64位,需要django版本:1.2.1
有人有想法吗?
最佳答案
你可以在 Windows 上安装多个版本的 Python(你似乎正在使用的)没有任何问题。您只需确保针对您的情况正确设置了默认的 Python 版本。
不要使用极其过时的 django 版本,而是安装最新版本的 Python - 只需从安装程序中选择不同的路径即可。因此,不要将 C:\Python27
设置为 C:\Python-27
或其他任何内容。
如果您正在安装 Python 3,则不必更改路径,因为 Python 3 将自身安装在 C:\Program Files
(Windows 中程序的默认位置)中,因此不会与直接安装到 C:\
驱动器上的 Python 2 冲突。
安装更新版本的 Python 后,只需确保在需要安装 django 时调用该版本的 Python。要有效地做到这一点,请使用 Python virtual environment .
假设您已经在 C:\Python-27
中安装了最新版本的 Python 2,下面是如何针对它安装最新版本的 django:
首先,您需要安装 virtualenv 包。打开命令提示符,然后键入以下内容(>
是提示符,请勿键入):
> C:\Python-27\Scripts\pip.exe install virtualenv
几分钟后,您应该安装了 virtualenv,下一步是在新的虚拟环境中安装 django:
> C:\Python-27\Scripts\virtualenv.exe C:\%USER%\Desktop\django-env
完成后,您需要激活环境,并安装 django:
> C:\%USER%\Desktop\django-env\bin\activate.bat
(django-env) > pip install django
现在您已经在更新版本的 Python 上安装了最新版本的 django。
管理这些环境可能很困难;所以我建议下载一个 Python IDE。 PyCharm 是我使用的,并且有一个免费的社区版本可用。它将使您轻松管理所有不同版本的 Python。
关于python - 安装 Django : syntax error 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37695603/