[英]Why python absolute import does not work?
我试图在我的脚本中使用绝对导入。 有 2 种变体。 之前我在 main.py 中使用过:
from helper import time_measurement
from logger import logger
这个例子工作得很好。
然后我尝试使用绝对导入,例如:
from porous_calc.helper import time_measurement
from porous_calc.logger import logger
这个错误结果是:
*PS C:\Users\Anvar> & C:/Users/Anvar/AppData/Local/Programs/Python/Python37/python.exe c:/Users/Anvar/Desktop/SW2/gitProject/4dtomo/porous_calc/main.py
Traceback (most recent call last):
File "c:/Users/Anvar/Desktop/SW2/gitProject/4dtomo/porous_calc/main.py", line 2, in <module>
import porous_calc.anisotropic_volume_gen as avg
ModuleNotFoundError: No module named 'porous_calc'
PS C:\Users\Anvar>*
所有文件(main.py、helper.py、logger.py)都位于同一个文件夹poority_calc。 为什么第二种导入方式不起作用? 程序已从 VS Code 命令行运行。
这是因为python3中没有“绝对导入”这样的东西。 一切都与当前位置有关。 做这样的事情的典型方法是:
from .helper import time_measurement
from .logger import logger
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.