自己写的python模块,在pycharm中执行时可以正常import,在控制台执行时报错 ModuleNotFoundError: No module named ‘’
程序员文章站
2022-05-10 17:18:02
...
1. 问题描述:
自己定义的python模块,在PyCharm中执行时可以正常import,但是在控制台中执行时报错 ModuleNotFoundError: No module named ‘XXX’
2. 问题分析:
什么是sys.path?
sys.path是一个list,是python脚本执行时的一个环境变量,里面存放该脚本所有可导入模块的所在目录,包括内建模块所在目录,第三方模块所在目录,自定义模块所在目录
注意:如果你未对sys.path做任何改动时,在自定义模块所在目录那里,只会包含该python脚本的第一及父目录,这里也说明,报错的根本原因在于要import的模块跟执行脚本未在同一个目录下
因为PyCharm中,可以在Settings中可视化的修改Sources,相当于修改了sys.path,所以程序知道从哪里找到自定义模块
3. 问题解决:
找到自定义模块所在目录 [或者任意深度的父目录]
# 这段代码要放在所有其他import代码之前 import sys sys.path.append('自定义模块所在目录')
上一篇: iPhone性能跌回三年前遭吐槽!苹果急推新版修复性能问题
下一篇: 青莴苣好吃的做法