我有一个python应用程序,我安装在WSL ubuntu和我试图链接我的VSCode(从windows到它)。我在完成你的工作时遇到了一些麻烦,希望你能帮助我。
<<p>情况/strong>在运行一个脚本,我需要(在VSCode终端),我得到以下错误。ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment?
(请注意我是在虚拟环境中)。
然后我回到Ubuntu,我运行python3 -m django --version
,它返回3.2.8
。
我回到VSCode虚拟环境并运行显示/mnt/h/Documents/Projects/React/Myplace/venv/bin/python: No module named django
的相同脚本
所以我想也许我可以安装它然后运行sudo pip install Django==3.2.8
返回
Requirement already satisfied: Django==3.2.8 in /usr/local/lib/python3.8/dist-packages (3.2.8) Requirement already satisfied: sqlparse>=0.2.2 in /usr/local/lib/python3.8/dist-packages (from Django==3.2.8) (0.4.2) Requirement already satisfied: asgiref<4,>=3.3.2 in /usr/local/lib/python3.8/dist-packages (from Django==3.2.8) (3.4.1) Requirement already satisfied: pytz in /usr/local/lib/python3.8/dist-packages (from Django==3.2.8) (2021.3)
鉴于此,我目前不确定如何进行。我想我还应该提到我创建我的虚拟环境使用sudo pip3 install virtualenv
virtualenv venv
source venv/bin/activate
如有任何帮助,不胜感激。
对
更新Django没有在virtualenv中安装我按照这个问题的建议,在虚拟环境的bin中安装了django。但是它总是告诉我包裹不见了。
你差点就成功了。问题是您的包没有安装在虚拟环境路径中。看一下这条消息:
Requirement already satisfied: Django==3.2.8 in /usr/local/lib/python3.8/dist-packages (3.2.8)
可以看到,/usr/local/lib/python3.8/dist-packages
不是/mnt/h/Documents/Projects/React/Myplace/venv/bin/python/dist-packages
要解决这个问题,你需要:
- 创建venv(你已经这样做了)
- 激活你的venv:
source <the name of your venv>/bin/activate
(你也这样做了) - 安装您的依赖项:
pip install -r <requirements file path>
或pip install <packages names>
通过阅读安装命令的输出,确保您的软件包安装在/mnt/h/Documents/Projects/React/Myplace/venv/bin/python/dist-packages
中。确认后,您应该能够运行您的代码。