首页 > 解决方案 > ModuleNotFoundError:重命名父文件夹后没有命名模块

问题描述

我在导入我开发的本地包时遇到问题。我在 conda 环境中使用WSL。我有以下结构:

 parent folder
     |- local_package
        |- package
           |- ...
           |- ...
        |- scripts
           |-script.py

以前,/parent folder/local_package作为工作目录,我可以调用python scripts/script.py,它会导入我的包并执行它的主要功能。一段时间后,我将其重命名为parent folderto parent_folder。执行此重命名后,我的脚本不再能够导入我的包,并显示ModuleNotFoundError. 我当前的解决方法是使用 pip 安装我的包,但是每次我需要测试它或在修改它时使用包时都安装它很麻烦。

我的问题是,我怎样才能解决这个问题,以便我能够在不安装包的情况下再次运行我的脚本?

一些可能有用的信息:

['', '/home/user/anaconda3/envs/p369_TF2.4/lib/python36.zip', '/home/user/anaconda3/envs/p369_TF2.4/lib/python3.6', '/home/user/anaconda3/envs/p369_TF2.4/lib/python3.6/lib-dynload', '/home/user/anaconda3/envs/p369_TF2.4/lib/python3.6/site-packages', '/mnt/c/Users/windows_user/Desktop/Parent folder/local_package']

我怀疑这可以通过修改 PYTHONPATH 环境变量来解决,但是当我运行printenv或在 windows 环境变量窗口中时它不会出现。我想我可以在导入我的包之前修改或添加路径,但我更喜欢一种更简洁的方式,不需要我修改所有未来的脚本。

标签: pythonpython-3.xpython-importpythonpathsys.path

解决方案


推荐阅读