您的当前位置:首页正文

python包导入路径报错问题,以及解决快速定位到相应的包

2024-11-29 来源:个人技术集锦

二、优化更改

不报错了,但是不能便捷的进入相应的包

三、优化更改

绝对导入、相对导入
绝对导入
在import语句或者from导入模块,模块名称最前面不是以.点开头的
绝对导入总是去模块搜索路径中找

相对导入
只在包内使用,且只能用在from语句中
使用.点号,表示当前目录内
使用..表示上一级目录
不要在顶层模块中使用相对导入

例:
a.b.c模块,a、b是目录,c是模块c.py,c的代码中,使用以下代码
from . import d # imports a.b.d
from .. import e # imports a.e
from .d import x # a.b.d.x
from ..e import x # a.e.x
1234
使用下面结构的包,体会相对导入的使用

m
|-- __init__.py
|-- m1.py
|-- m2
	|-- __init__.py
	|-- m21
		|-- __init__.py
	|-- m22.py
12345678
注意
一旦一个模块中使用相对导入,就不可以作为主模块运行了
显示全文