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

Flask子进程导入flask_sqlalchemy遇ModuleNotFoundError问题求助

解决子进程无法导入flask_sqlalchemy的问题

核心问题是你启动子进程tracking.py时,调用的Python解释器不是虚拟环境venv里的那个,导致找不到已安装的依赖。以下是具体解决步骤:

  • 先验证解释器路径是否正确
    在tracking.py开头添加两行代码:

    import sys
    print("子进程使用的Python路径:", sys.executable)
    

    运行app.py后,对比输出的路径和虚拟环境中的Python路径(比如类Unix系统是venv/bin/python,Windows是venv\Scripts\python.exe),如果不一致,就坐实了解释器用错的问题。

  • 修改子进程启动命令
    不要用默认的python命令启动子进程,要指定虚拟环境内的Python路径:

    • 类Unix系统(Linux/macOS):
      subprocess.run(["./venv/bin/python", "tracking.py"])
      
    • Windows系统:
      subprocess.run([".\\venv\\Scripts\\python.exe", "tracking.py"])
      

    更通用的写法是直接复用主进程的Python解释器路径,避免硬编码:

    import sys
    # 用当前app.py使用的Python启动子进程
    subprocess.run([sys.executable, "tracking.py"])
    
  • 再次确认依赖安装状态
    激活虚拟环境后,执行pip install flask-sqlalchemy确保依赖安装在venv内,再用pip list检查flask-sqlalchemy是否出现在列表中,排除安装到全局环境的情况。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 04:50:58