Python 代码在 pycharm 中运行良好,但在终端中运行时出现模块错误

问题描述 投票:0回答:1

我的 Flask 项目结构如下,我已将其部署到 ec2 。

myproject 
 --src 
     -- cache  
             --- cache.py
     -- storeservice 
            --- upload.py
           
     -- esService 
            --- es.py
     -- ui
           --- html
           --- static 
    -- main
          --- controller.py 

在控制器中我有导入

from storeservice.upload import Upload 

这在 pycharm 上运行良好,但是当我通过终端运行时,它给出了错误

我使用的命令是

python3 controller.py

from storeservice.upload import Upload
ModuleNotFoundError: No module named 'storeservice'

有没有一种方法可以在不更改任何代码的情况下执行它?

python pycharm
1个回答
0
投票

您需要将文件夹

/....../myproject/src
添加到您的
PYTHONPATH
,pycharm 默认情况下会执行此操作,您需要在 pycharm 之外手动执行此操作。

最便携的方法之一是创建一个 shell 脚本,使用正确的路径修改环境,然后执行 python 脚本,然后调用该脚本而不是直接调用 python。

© www.soinside.com 2019 - 2024. All rights reserved.