You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VSCode中Python导入自动补全正常但运行时模块找不到求助

解决VSCode中Python模块导入运行报错问题

问题场景

项目目录结构:

project
├── .env
└── folder_a
    ├── my_program.py

my_packages
├── __init__.py
└── packages_i_made
    ├── __init__.py
    └── personal_functions.py

my_program.py中导入代码:

from packages_i_made import personal_functions as pf

配置.env文件(含PYTHONPATH="C:/Users/user_1/my_packages")并在VSCode工作区指定后,Pylance自动补全正常,但运行时仍报错:

Traceback (most recent call last):
  File "c:\Users\user_1\...\...\project\folder_a\my_program.py", line 1, in <module>
    from packages_i_made import personal_functions as pf
ModuleNotFoundError: No module named 'packages_i_made'

解决方案

1. 修正.env文件格式

.env中不要给路径加引号,改成:

PYTHONPATH=C:/Users/user_1/my_packages

Windows环境下,引号会被解析为路径的一部分,导致Python无法识别正确的目录。

2. 确认VSCode加载.env的路径正确

打开VSCode工作区设置(Ctrl+,),搜索python.envFile,确保路径指向项目根目录的.env文件,示例:

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

修改后重启VSCode,确保配置生效。

3. 验证运行时的PYTHONPATH

在my_program.py开头添加以下代码,打印当前Python的搜索路径:

import sys
print(sys.path)

运行后检查输出是否包含C:/Users/user_1/my_packages:

  • 如果没有,说明.env未生效或系统环境变量配置有问题;
  • 如果有,检查my_packages下的目录结构和__init__.py是否正常。

4. 排查系统环境变量的PYTHONPATH配置

若你已将my_packages添加到系统PYTHONPATH:

  • 打开系统环境变量(Win+R输入sysdm.cpl → 高级 → 环境变量),确认当前用户或系统的PYTHONPATH中存在C:/Users/user_1/my_packages;
  • 配置后必须重启VSCode,因为VSCode启动时才会读取系统环境变量。

5. 临时应急方案(快速验证)

如果以上方法暂时没生效,可以在代码中手动添加路径:

import sys
sys.path.append("C:/Users/user_1/my_packages")
from packages_i_made import personal_functions as pf

若这样能正常运行,说明问题确实出在路径配置未生效上,回到前面的步骤排查配置问题。

6. 检查__init__.py文件

确保my_packages和packages_i_made下的__init__.py文件为空或无语法错误,空文件即可满足包识别要求,无需额外代码。

内容的提问来源于stack exchange,提问作者h4zard

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 15:40:48