在 Visual Studio Code 中添加模块的 Python 路径

2024-01-01

我很难指定包含另一个目录甚至同一项目的文件夹中的模块/包的 python 路径。当我尝试导入时出现错误:

ModuleNotFoundError:没有名为“感知”的模块

在 Spyder 中,这只需使用 UI 选择 python 将查找的附加 pythonpath 即可完成,但我无法在 VSC 中执行此操作。

注意我已尝试遵循有关编辑 settings.json 文件和 .env 文件的其他答案,但问题仍然存在。

我唯一的解决方案是在每个脚本中使用 sys.path.append() ,这不是我想要的。

作为示例,我的 settings.json 文件是:

{
    "terminal.integrated.env.osx": {
        "PYTHONPATH": "pathtoprojectfolder"
    },
    "python.envFile": "${workspaceFolder}/.env",
    "jupyter.interactiveWindowMode": "perFile",
    "python.terminal.executeInFileDir": true,
    "terminal.integrated.inheritEnv": true,
    "jupyter.themeMatplotlibPlots": true,
    "window.zoomLevel": 2,
    "python.condaPath": "path_to_conda_python",
    "python.defaultInterpreterPath": "path_to_conda_python",
}

仅适用于 MacOS 的说明。

添加 .env 文件并导航设置 json 文件并不像在 Spyder 中添加额外的 python 路径那么直观和简单。然而,这对我在 VSC 上有用:

  1. 在项目文件夹中创建一个 .env 文件。
  2. 添加要添加到 PYTHONPATH 的完整路径,如下所示: PYTHONPATH=/Users/../projectFolder:/Users/.../AnotherProjectFolder

** 至关重要的是,您必须在路径之间使用适当的分隔符,在 Mac 上您必须使用“:”,否则路径将不会被添加。

  1. 转到代码->首选项->设置并搜索“terminal.integrated.osx”。单击编辑“settings.json”

  2. 添加到json设置

    "python.envFile": "${workspaceFolder}/.env",

例如,您可能有 settings.json 显示以下内容:

{
    "python.envFile": "${workspaceFolder}/.env",
    "jupyter.interactiveWindowMode": "perFile", 
    "python.terminal.executeInFileDir": true,
}

添加路径是一个相当复杂的过程,但我喜欢在 VSC 中运行 Jupyter 笔记本的功能,而 Spyder 在独立安装程序中尚不具备这种功能。

该页面包含所需的信息:https://code.visualstudio.com/docs/python/environments#_environment-variable-definitions-file https://code.visualstudio.com/docs/python/environments#_environment-variable-definitions-file

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Visual Studio Code 中添加模块的 Python 路径 的相关文章

  • (discord.py) 尝试更改成员角色时,“用户”对象没有属性“角色”

    因此 我正在尝试编写一个机器人 让某人在命令中指定的主持人指定的一段时间内暂停角色 我知道该变量称为 小时 即使它目前以秒为单位 我稍后会解决这个问题 基本上 它是由主持人在消息 暂停 personmention numberofhours
  • 如何使用固定的 pandas 数据框进行动态 matplotlib 绘图?

    我有一个名为的数据框benchmark returns and strategy returns 两者具有相同的时间跨度 我想找到一种方法以漂亮的动画风格绘制数据点 以便它显示逐渐加载的所有点 我知道有一个matplotlib animat
  • DreamPie 不适用于 Python 3.2

    我最喜欢的 Python shell 是DreamPie http dreampie sourceforge net 我想将它与 Python 3 2 一起使用 我使用了 添加解释器 DreamPie 应用程序并添加了 Python 3 2
  • 如何在 Sublime Text 2 的 OSX 终端中显示构建结果

    我刚刚从 TextMate 切换到 Sublime Text 2 我非常喜欢它 让我困扰的一件事是默认的构建结果显示在 ST2 的底部 我的程序产生一些很长的结果 显示它的理想方式 如在 TM2 中 是并排查看它们 如何在 Mac 操作系统
  • 如何等到 Excel 计算公式后再继续 win32com

    我有一个 win32com Python 脚本 它将多个 Excel 文件合并到电子表格中并将其另存为 PDF 现在的工作原理是输出几乎都是 NAME 因为文件是在计算 Excel 文件内容之前输出的 这可能需要一分钟 如何强制工作簿计算值
  • Python tcl 未正确安装

    我刚刚为 python 安装了graphics py 但是当我尝试运行以下代码时 from graphics import def main win GraphWin My Circle 100 100 c Circle Point 50
  • 如何使用装饰器禁用某些功能的中间件?

    我想模仿的行为csrf exempt see here https docs djangoproject com en 1 11 ref csrf django views decorators csrf csrf exempt and h
  • 在循环中每次迭代开始时将变量重新分配给原始值(在循环之前定义)

    在Python中 你使用 在每次迭代开始时将变量重新分配给原始值 在循环之前定义 时 也就是说 original 1D o o o for i in range 0 3 new original 1D revert back to orig
  • 在 NumPy 中获取 ndarray 的索引和值

    我有一个 ndarrayA任意维数N 我想创建一个数组B元组 数组或列表 其中第一个N每个元组中的元素是索引 最后一个元素是该索引的值A 例如 A array 1 2 3 4 5 6 Then B 0 0 1 0 1 2 0 2 3 1 0
  • python 集合可以包含的值的数量是否有限制?

    我正在尝试使用 python 设置作为 mysql 表中 ids 的过滤器 python集存储了所有要过滤的id 现在大约有30000个 这个数字会随着时间的推移慢慢增长 我担心python集的最大容量 它可以包含的元素数量有限制吗 您最大
  • Python:字符串不会转换为浮点数[重复]

    这个问题在这里已经有答案了 我几个小时前写了这个程序 while True print What would you like me to double line raw input gt if line done break else f
  • 从 pygame 获取 numpy 数组

    我想通过 python 访问我的网络摄像头 不幸的是 由于网络摄像头的原因 openCV 无法工作 Pygame camera 使用以下代码就像魅力一样 from pygame import camera display camera in
  • 为美国东部以外地区的 Cloudwatch 警报发送短信?

    AWS 似乎没有为美国东部以外的 SNS 主题订阅者提供 SMS 作为协议 我想连接我的 CloudWatch 警报并在发生故障时接收短信 但无法将其发送到 SMS YES 经过一番挖掘后 我能够让它发挥作用 它比仅仅选择一个主题或输入闹钟
  • 在Python中重置生成器对象

    我有一个由多个yield 返回的生成器对象 准备调用该生成器是相当耗时的操作 这就是为什么我想多次重复使用生成器 y FunctionWithYield for x in y print x here must be something t
  • Python:计算字典的重复值

    我有一本字典如下 dictA unit1 test1 alpha unit1 test2 beta unit2 test1 alpha unit2 test2 gamma unit3 test1 delta unit3 test2 gamm
  • 检查所有值是否作为字典中的键存在

    我有一个值列表和一本字典 我想确保列表中的每个值都作为字典中的键存在 目前我正在使用两组来确定字典中是否存在任何值 unmapped set foo set bar keys 有没有更Pythonic的方法来测试这个 感觉有点像黑客 您的方
  • glpk.LPX 向后兼容性?

    较新版本的glpk没有LPXapi 旧包需要它 我如何使用旧包 例如COBRA http opencobra sourceforge net openCOBRA Welcome html 与较新版本的glpk 注意COBRA适用于 MATL
  • 您可以在 Python 类型注释中指定方差吗?

    你能发现下面代码中的错误吗 米皮不能 from typing import Dict Any def add items d Dict str Any gt None d foo 5 d Dict str str add items d f
  • Spark.read 在 Databricks 中给出 KrbException

    我正在尝试从 databricks 笔记本连接到 SQL 数据库 以下是我的代码 jdbcDF spark read format com microsoft sqlserver jdbc spark option url jdbc sql
  • 改变字典的哈希函数

    按照此question https stackoverflow com questions 37100390 towards understanding dictionaries 我们知道两个不同的字典 dict 1 and dict 2例

随机推荐