Replit中Python无法识别本地自定义模块‘program’的解决求助
Replit中Python无法识别本地自定义模块‘program’的解决求助
嘿各位,我在Replit上写Python代码时遇到了模块导入的问题,想请大家帮忙看看!
我有个名为models的目录,里面存放着Python文件。我在这个目录里创建了test.py,想从名为program的自定义模块里导入say_hello函数,test.py里的代码是这样的:
from program import say_hello print(say_hello())
可是运行这个文件的时候,却弹出了错误:ModuleNotFoundError: No module named program。而且我确认program目录里已经有__init__.py文件了,应该是符合模块规范的呀。
我的需求是让Python能在LyMedia的根目录里找到program这个本地模块,这样我就能顺利导入里面的函数了。目前我只找到了两种可行的办法:
- 把
models目录直接放到LyMedia的根目录下 - 在test.py里添加以下代码来修改Python的路径:
import sys import os sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '../'))) from program import say_hello print(say_hello())
但总觉得这样有点麻烦,有没有更简洁或者更符合规范的方法,能让Replit里的Python自动识别我的自定义模块呢?期待大家的解答!
备注:内容来源于stack exchange,提问作者Cameron Horne
相关产品推荐
相关产品推荐

