python 遇到模块找不到路径怎么办?
python 找模块的顺序是
1.在内存中找
2.在内置中找
3.在sys.path找
当我们在pycharm中运行代码的时候,他会自动帮我们把执行文件的父目录和项目的根目录添加到sys.path
而不在pycharm中运行,或者部署到其他服务器上运行,就会出现找不到路径的情况。
解决方式
添加路径到sys.path
1.添加绝对路径
2.添加相对路径
注意:这里要添加路径一定是能看到你导入那个模块的。他看的顺序是只能看到下面,看不到自己。
比如 from aaa import x 是要添加/home/code/ 而不是/home/code/aaa
添加方式
1.绝对路径
sys.path.append(r"/home/code")
2.相对路径
BASE_DIR1 = os.path.abspath(__file__) # 执行文件的路径
BASE_DIR2 = os.path.dirname(os.path.abspath(__file__)) # 执行文件的上一层
BASE_DIR3 = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) # 执行文件的上上一层
print(BASE_DIR1)
print(BASE_DIR2)
print(BASE_DIR3)
sys.path.append(BASE_DIR)