【问题标题】:Can we create a venv for python and use that venv in other folders in VSCode, Windows 10?我们可以为 python 创建一个 venv 并在 VSCode、Windows 10 的其他文件夹中使用该 venv 吗?
【发布时间】:2021-07-14 12:37:57
【问题描述】:
  • 操作系统:windows10
  • 编辑器:VSCode(已安装扩展:python、Code Runner。)
  • Python 安装在我的机器上:3.9.0

1- 我的项目在这个文件夹中“D:\darsy\Python\Learning\Code with Mosh - The Complete Python Programming Course for Beginners 2019-4\11- Popular Python Packages\code\7- Web Scraping\PyCrawler2 "

2- 我在这个文件夹中有 app.py

3- 我在 VSCode 中打开了这个文件夹。

4- 我打开 VSCode 终端并运行以下命令: D:\darsy\Python\Learning\Code with Mosh - The Complete Python Programming Course for Beginners 2019-4\11- Popular Python Packages\code\7- Web Scraping\PyCrawler2> pipenv install requests

5- 所以我在这个目录中有一个 venv:“C:\Users\Acer.virtualenvs\PyCrawler2-RWWuk_HY”

6- 我将 VSCode 中的 python 解释器更改为这个 venv。

7- 我将这段代码写在我的 app.py 文件中

import requests

8- 在 VSCode 终端中,我运行这个命令:

D:\darsy\Python\Learning\Code with Mosh - The Complete Python Programming Course for Beginners 2019-4\11- Popular Python Packages\code\7- Web Scraping\PyCrawler2> python app.py

9- 我收到此错误:ModuleNotFoundError: No module named 'requests' 。

为什么?我已经在我的 venv 中安装了 requests 包。

我认为它并不特定于这个包。我安装并想使用的任何软件包都会遇到此问题。

提前感谢您的帮助。

【问题讨论】:

    标签: python visual-studio-code windows-10 modulenotfounderror


    【解决方案1】:

    在运行程序之前,我应该激活 venv,以便运行:

    pipenv shell
    

    【讨论】:

      【解决方案2】:

      请在VS Code左下角选择你创建的虚拟环境,然后使用快捷键Ctrl+Shift+`打开一个新的VS Code终端,它会自动进入选择的环境:

      然后点击Vs代码右上角的运行按钮:

      另外,建议您使用“Python”扩展提供的绿色运行按钮来运行“终端”中的代码。

      【讨论】:

      • 我设置了新环境,但问题没有解决。你评论的这几句话帮助了我,解决了问题“然后点击Vs代码右上角的运行按钮:”和“另外,建议你使用“Python”扩展提供的绿色运行按钮在“终端”中运行代码。”谢谢你。我还发现我应该首先使用“pipenv shell”激活 venv。
      • @Zighol -是的,原因是你运行代码的终端没有进入创建的虚拟环境,所以VS Code找不到模块。
      【解决方案3】:

      为了让您的应用使用安装在虚拟环境中的包,需要激活 env。

      通过运行激活它:

      source myenv/bin/activate # linux
      python -m venv c:\path\to\myenv # windows
      

      其中myenv 替换为您的虚拟环境的名称。

      您可以知道一个 env 已激活,因为它会显示在终端中每一行的开头,如下所示:(myenv) user@DESKTOP-001:

      之后,当您运行python run.py 时,您的应用将自动使用安装在环境中的包。

      您也可以查看the virtual environment docs

      【讨论】:

      • 我在 VSCode 集成终端中运行“python -m venv C:\Users\Acer\.virtualenvs\PyCrawler2-RWWuk_HY”,我收到此错误:“错误:[Errno 13] 权限被拒绝:' C:\\Users\\Acer\\.virtualenvs\\PyCrawler2-RWWuk_HY\\Scripts\\python.exe' "
      猜你喜欢
      • 1970-01-01
      • 2019-01-10
      • 1970-01-01
      • 2021-10-02
      • 1970-01-01
      • 2022-01-23
      • 2019-12-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多