首页 > 解决方案 > 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 文件。

标签: pythonwindowspython-3.xvisual-studio-2017

解决方案


Python 路径不是由 Python 代码或项目文件专门设置的,它们被设置为系统路径变量。为了添加模块和解释器,我需要将 PYTHONPATH 添加到系统变量并让它指向包含模块的文件夹,然后将 Python.exe 路径添加到路径列表的顶部


推荐阅读