python - Visual Studio 2017 中的 Python 无法通过搜索路径找到模块
问题描述
我正在尝试将具有 python 虚拟环境的现有 python 项目添加到 Visual Studio 2017,以便我可以调试它。
该项目还具有一些外部依赖项,
一切都安排在以下文件夹中
C:\myproject\code
C:\myproject\portablepython
C:\myproject\pylibrary
我使用创建了项目File->New Project->Python->From Existing Python Code
Tools->Python->Python Environments
我使用 C:\myproject\portablepython 作为前缀路径
添加了 PortablePython 虚拟环境,C:\myproject\portablepython\python.exe
将解释器路径
C:\myproject\portablepython\wpython.exe
作为窗口解释器路径语言自动检测为 3.6、64 位,我什至添加C:\myproject\pylibrary
了路径环境变量。
我还将pylibrary添加到项目搜索路径中,使其看起来像..\pylibrary
我的问题是当我构建项目时,它在第一个库导入时失败ImportError("cannot import name 'mdevice'",)
了
from mdevice import mdevice
而这个模块显然在C:\myproject\pylibrary
路径中
更有趣的是,当我portablepython
从 Python 环境中删除时,它默认为 Python 3.6,它找到了第一个模块,但在第一个模块下面的行中找不到第二个模块。
两个模块都在C:\myproject\pylibrary
我不知道这里的 Visual Studio 有什么问题,对我来说似乎是一个错误
旁注:我必须使用创建虚拟环境,Tools->Python->Python Environments
因为当我右键单击项目并选择Add Virtual Environment
并选择它时,C:\myproject\portablepython
它实际上会显示"We Cannot Create a Virtual Environment at the Specified path. Choose a folder that does not exist, is empty, or contains and existing virtual environment"
,即使它清楚地包含此文件夹中的正确 python 文件。
解决方案
Python 路径不是由 Python 代码或项目文件专门设置的,它们被设置为系统路径变量。为了添加模块和解释器,我需要将 PYTHONPATH 添加到系统变量并让它指向包含模块的文件夹,然后将 Python.exe 路径添加到路径列表的顶部
推荐阅读
- python - Telegram 将 png 图片发送到 Telegram 将其转换为 jpg
- javascript - 我有这个错误:无法读取 null 的属性“值”,我不明白为什么
- reactjs - Material UI 中的可变图像网格显示
- node.js - 在 Express.js 项目中使用 Webpack 捆绑安装了 npm 的 Bootstrap
- html - 在已发布的 Azure 应用服务中找不到视图/控制器
- http - Grails HTTPResponse 失败的依赖异常
- javascript - 如何将来自 console.log 的打印消息直接添加到 javascript 的返回函数字符串中?
- symfony - 如何在easyadmin中为删除操作添加item_permission?
- javascript - 一些变量被多次加载
- javascript - 将数组元素的值与前一个元素相加