为啥我在启动一个新的 Django 项目时会收到“ImportError: cannot import name find_spec”?
Posted
技术标签:
【中文标题】为啥我在启动一个新的 Django 项目时会收到“ImportError: cannot import name find_spec”?【英文标题】:Why do I get "ImportError: cannot import name find_spec" when I start a new Django project?为什么我在启动一个新的 Django 项目时会收到“ImportError: cannot import name find_spec”? 【发布时间】:2016-04-09 22:50:43 【问题描述】:我正在与 Django 一起学习 Python。我最初在我的机器 (Debian Wheezy) 上安装了 Python 3,但阅读了可能的冲突并将其删除有些困难。
现在我使用 virtualenv 并使用 pip 在 env 和 Django 中安装了 python3。 Django 和 Python 似乎安装正确:
# python -c "import django; print(django.get_version())"
1.9.1
# python -V
Python 3.2.3`
但是当我尝试启动一个新的 Django 项目时,我得到以下信息:
# django-admin.py startproject mysite
Traceback (most recent call last):
File "/home/rialaado/Projects/webenv/bin/django-admin.py", line 2, in <module>
from django.core import management
File "/home/rialaado/Projects/webenv/lib/python3.2/site-packages/django/core/management/__init__.py", line 10, in <module>
from django.apps import apps
File "/home/rialaado/Projects/webenv/lib/python3.2/site-packages/django/apps/__init__.py", line 1, in <module>
from .config import AppConfig
File "/home/rialaado/Projects/webenv/lib/python3.2/site-packages/django/apps/config.py", line 6, in <module>
from django.utils.module_loading import module_has_submodule
File "/home/rialaado/Projects/webenv/lib/python3.2/site-packages/django/utils/module_loading.py", line 67, in <module>
from importlib.util import find_spec as importlib_find
ImportError: cannot import name find_spec
快速谷歌搜索没有任何结果可以帮助我。
我该怎么办?
【问题讨论】:
【参考方案1】:find_spec
在 Python 3.2.3 中不可用;是added in Python 3.4。
尝试升级到 3.4 或更高版本。
【讨论】:
【参考方案2】:我在使用 docker 容器时遇到了同样的问题。
在使用 Docker 容器和 django 1.9 和 python:3.3 依赖项时,find_spec 不可用。
在您的 docker 映像中添加以下行作为依赖项有效。
FROM python:3.4
【讨论】:
【参考方案3】:您使用的 Django 版本 (v1.9.1) 不能与 Python 3.2 一起使用。因此,@KarthiG 和 @MUNGAI NJOROGE 是正确的,现在您知道为什么了。
What Python version can I use with Django?
【讨论】:
我正在使用 Django 1.9 和 Python 3.4以上是关于为啥我在启动一个新的 Django 项目时会收到“ImportError: cannot import name find_spec”?的主要内容,如果未能解决你的问题,请参考以下文章
为啥我在启动模拟器时会收到此 GRPC 错误“WARNING: EmulatorService.cpp:448: Cannot find certfile”?
为啥我在我的 Django 项目中不断收到此“名称‘模型’未定义”错误?
Scikit-learn GridSearchCV - 为啥我在执行 grid.fit() 时会收到数据类型错误?
为啥我在 Django 中收到“MySQL 服务器已消失”异常?