python - 无法识别 Django 应用程序中的导入模块
问题描述
File "C:\Users\User\projects\Datascience\Bee_Word_Project\spellbee\views.py", line 4, in <module>
from . import beewordpick
File "C:\Users\User\projects\Datascience\Bee_Word_Project\spellbee\beewordpick.py", line 4, in <module>
import pyttsx3
ModuleNotFoundError: No module named 'pyttsx3'
实际上,上面的 pyttsx3 模块是 pip 安装的。Django 未在其搜索列表中识别 env PATH。它仅在本地应用程序路径中搜索模块。
谁能推荐如何在 Django 中设置对导入模块的搜索?在 settings.py 中必须做什么?当我使用 FLASK 应用程序运行相同的模块时,我可以运行该应用程序。
(test) PS C:\Users\User\projects\Datascience\Bee_Word_Project> pip freeze
asgiref==3.2.10
Django==3.1.2
pytz==2020.1
sqlparse==0.3.1
如果我将该库添加到我上面的工作路径中,它可以识别,但它不是从 sys env PATH 库中挑选的,因为这个模块是 python 包添加到本地环境后,它工作正常。但是今天,突然之间,由于 pyttsx3 中的模块无法正常工作-驱动程序 ModuleNotFoundError at /spellbee/ No module named 'comtypes' Request Method: POST Request URL: http://xxxxxxx/spellbee/ Django Version: 3.1 .2 异常类型:ModuleNotFoundError 异常值:
没有名为“comtypes”的模块异常位置:C:\Users\User\projects\Datascience\Bee_Word_Project\pyttsx3\drivers\sapi5.py,第 1 行,Python 可执行文件:C:\Users \User\Envs\test\Scripts\python.exe Python 版本:3.8.5 Python 路径:
['C:\Users\User\projects\Datascience\Bee_Word_Project', 'C:\Users\User\Envs\test\Scripts\python38.zip', 'c:\users\user\appdata\local\programs\python \python38-32\DLLs', 'c:\users\user\appdata\local\programs\python\python38-32\lib', 'c:\users\user\appdata\local\programs\python\python38-32 ', 'C:\Users\User\Envs\test', 'C:\Users\User\Envs\test\lib\site-packages']
解决方案
... Django 没有在他们的搜索列表中识别 env PATH ...
我认为你错过了一些小事。Django 与 env 无关,一切都与 django 运行的地方有关。如果你在环境中运行 django,它使用 env pip 模块,如果它在本地运行,它使用本地 pip 模块
现在在您的(test)
环境中,pyttsx3 没有安装在 pip 列表中
在 env 和 local 中尝试pip install pyttsx3
,然后进行测试
有时您需要在已安装的应用程序中添加模块:
INSTALLED_APPS = [
...
'pyttsx3',
...
]
推荐阅读
- azure-devops - Azure 构建:您是否缺少程序集参考?
- c++ - 如何检查类型 T 是否在参数包 Ts 中...?
- java - 如何将意图发送到游戏视图
- spring - 使用休眠存储的 LocalDate 错误
- javascript - 替换 DIV 类中的逗号和美元符号
- node.js - 由于“针对不同版本的 Node.js 编译的尖锐模块”,Expo 无法运行
- django - 将嵌套对象序列化为当前父对象的平面属性
- algorithm - 在第三个列表中存在的两个python列表中查找公共索引
- python - 骰子游戏将随机骰子总数添加到变量中
- java - 无法使用 Spring Data JPA 创建 JOIN