django 2.1.7 在 python 3.4 上安装失败

django 2.1.7 在 python 3.4 上安装失败

下载 Django-2.1.7-py3-none-any.whl (7.3MB):已下载 4.3MB

正在下载/解压 Django 要求已经是最新的:/usr/local/lib/python3.4/dist-packages 中的 pytz(来自 Django) 正在安装收集的包:Django *** 编译‘/tmp/pip-build-tj2qptrw/Django/django/contrib/admin/actions.py’时出错...
文件“/tmp/pip-build-tj2qptrw/Django/django/contrib/admin/actions.py”,第 55 行 **modeladmin.admin_site.each_context(request),^ SyntaxError:语法无效

*** 编译‘/tmp/pip-build-tj2qptrw/Django/django/contrib/admin/checks.py’时出错...
文件“/tmp/pip-build-tj2qptrw/Django/django/contrib/admin/checks.py”,第 73 行 *self._check_autocomplete_fields(admin_obj),^ SyntaxError:只能使用带星号的表达式作为分配目标

.....

*** 编译‘/tmp/pip-build-tj2qptrw/Django/django/utils/feedgenerator.py’时出错...
文件“/tmp/pip-build-tj2qptrw/Django/django/utils/feedgenerator.py”,第 82 行 **kwargs,^ SyntaxError:语法无效

*** 编译‘/tmp/pip-build-tj2qptrw/Django/django/utils/ functional.py’时出错...文件“/tmp/pip-build-tj2qptrw/Django/django/utils/ functional.py”,第 12 行返回 _curried_func(*args、*moreargs、**{**kwargs、**morekwargs}) ^ SyntaxError:语法无效

*** 编译‘/tmp/pip-build-tj2qptrw/Django/django/utils/log.py’时出错...文件“/tmp/pip-build-tj2qptrw/Django/django/utils/log.py”,第 229 行)^ SyntaxError:语法无效

*** 编译‘/tmp/pip-build-tj2qptrw/Django/django/utils/tree.py’时出错...文件“/tmp/pip-build-tj2qptrw/Django/django/utils/tree.py”,第 76 行返回 hash((self.班级, self.connector, self.negated, *make_hashable(self.children))) ^ SyntaxError: 只能使用带星号的表达式作为赋值目标

成功安装 Django 正在清理...

export PATH=$PATH:~/.local/bin

跑步django-admin或者python3 管理.py(Python 3.4.2,尝试使用和不使用虚拟环境,输出相同)

(ve) user@localhost:$ django-admin

Traceback (most recent call last):
File "/home/user/.local/bin/django-admin", line 7, in <module>
    from django.core.management import execute_from_command_line
File "/home/user/.local/lib/python3.4/site-packages/django/core/management/__init__.py", line 11, in <module>
    from django.conf import settings
File "/home/user/.local/lib/python3.4/site-packages/django/conf/__init__.py", line 18, in <module>
    from django.utils.functional import LazyObject, empty
File "/home/user/.local/lib/python3.4/site-packages/django/utils/functional.py", line 12
    return _curried_func(*args, *moreargs, **{**kwargs, **morekwargs})
                                ^
SyntaxError: invalid syntax

答案1

好的,这是一个基本的版本不匹配问题(python 与 django),可以修复,在这种情况下:

 python3 -m pip install Django==2.0 --user

我们必须尊重版本要求
Django 版本 -> Python 版本
1.11 -> 2.7、3.4、3.5、3.6、3.7(在 1.11.17 中添加)
2.0 -> 3.4、3.5、3.6、3.7
2.1、2.2 -> 3.5、3.6、3.7

相关内容