Python项目模块导入报错:ModuleNotFoundError问题求助
解决Python模块导入错误:ModuleNotFoundError: No module named 'math_tools'
问题原因
power_func.py中使用了from math_tools import multiplier的导入语句,但math_tools是tools目录下的子模块,并非Python可直接识别的顶层模块(运行main.py时,Python的搜索路径仅包含project目录),因此会出现模块找不到的错误。
修复方案
方案1:使用相对导入修改power_func.py
将power_func.py中的导入语句改为相对路径导入,利用.表示当前模块所在目录:
from .math_tools import multiplier def pow(num_1, num_2): result = num_1 for _ in range(num_2 - 1): result = multiplier(num_1, result) return result
方案2:使用绝对导入修改power_func.py
从顶层模块tools开始指定完整路径导入:
from tools.math_tools import multiplier def pow(num_1, num_2): result = num_1 for _ in range(num_2 - 1): result = multiplier(num_1, result) return result
验证修复
修改完成后,运行main.py,控制台将输出8,表示导入成功且功能正常。
内容的提问来源于stack exchange,提问作者Aslan Noorghasemi
相关产品推荐
相关产品推荐

