python django项目命令行运行出现ModuleNotFoundError: No module named

python django项目命令行运行出现ModuleNotFoundError: No module named

  • python项目结构描述
    • 问题描述
    • 解决方案
      • (1)将transfer_learning文件夹mark成source root.
      • (2) 将要导入的方式做变化
      • (3)设置setting
    • 总结

python项目结构描述

开发工具: pycharm
开发环境: python=3.6 django=2.1
项目结构:
python django项目命令行运行出现ModuleNotFoundError: No module named_第1张图片

问题描述

直接在pycharm中启动django项目,可以正常直接运行transfer_util.py文件,但在服务器上单独用python transfer_util.py运行会出现ModuleNotFoundError: No module named ‘transfer_learning’ 错误

解决方案

(1)将transfer_learning文件夹mark成source root.

 pycharm操作流程:鼠标右键选中transfer_learnin,选择Mark    Directory As——>Sources Root

(2) 将要导入的方式做变化

原来的导入方式:from transfer_learning.constant import Constant
新的方式:import constant

(3)设置setting

在setting文件添加:
sys.path.insert(0,os.path.join(BASE_DIR,‘transfer_learning’))
具体的是什么目录改为了Sources Root就填写什么目录即可。详细参见下图:
python django项目命令行运行出现ModuleNotFoundError: No module named_第2张图片

总结

按照上面步骤解决即可完美的解决命令行不能运行的问题。如果能解决你的问题,欢迎点个赞

你可能感兴趣的:(命令行运行找不到目录)