安装
- Python插件(以前称为Pylance)
- 标准VS代码调试器
- PDM /
pyproject.toml
封装格式 - 在本地安装软件包
如果需要,我可以提供其他配置细节,但我认为它们无关紧要。
问题
我有一个包,其中有一个模块正在调用另一个模块中的函数。而不是调用我正在编辑的 * 实际 * 源代码,并且存在于repo中,它正在调用虚拟环境中使用的文件。即,
- 调用模块A中的函数1,该函数调用模块B中的函数2。
- 但是,不是调用模块B,而是调用 * 在我的虚拟环境中安装模块B。
- 实际源中的模块B:
src/phxfakedata/utils/traverse.py
- 虚拟环境中的模块B:
.venv/lib/python3.8/site-packages/phxfakedata/utils/traverse.py
- 模块A正在从实际的存储库
src/phxfakedata/generate/generate.py
进行调试,但是当它深入研究模块B时,它正在虚拟环境中调用模块。 - 这是一个问题,因为我开始处理这个问题-它在模块B中,但只有在从模块A调用时才可见-然后我意识到我所做的所有修复都是在虚拟环境文件上完成的,所以当我运行(正确隔离的)测试时,它们都失败了,因为我所做的所有工作都在错误的文件上。
解决方案
我希望有某种配置 * 在VS代码 *,我可以告诉它,请不要使用虚拟环境,但使用实际的代码。
我以为这是因为我实际上并没有安装为一个可编辑的软件包,但这似乎不是问题。
1条答案
按热度按时间pb3skfrl1#
使用以下设置忽略您不想获取的模块:
不应包括的目录或文件的路径。这些路径覆盖包括目录,允许排除特定的子目录。请注意,如果引用了排除路径中的文件,则这些文件仍可能包括在分析中(导入)未排除的源文件。路径可能包含通配符**(一个目录或多个目录级别),*(零个或多个字符的序列),或者?如果未指定排除路径,Pylance将自动排除以下目录:
**/node_modules
、**/__pycache__
、.git
和任何虚拟环境目录。