我对Python中的from import语句感到有些困惑。特别是,我如何从包中的模块导入类。例如,如果我有一个名为my package的包有两个模块(模块1和模块2),我如何从模块2中的模块1导入特定的类?
我目前发现的是,我需要(在模块二中)执行以下操作...
from package import module1
module1.class1()
虽然这有效,但我更愿意直接从模块2访问class1(),因为它不是很易读。但是,以下语法不起作用...
from package import module1.class1
此外,它不会让我只是去......
from module1 import class1
如何直接在该包中的单独模块中导入包内模块中的类?
答案 0 :(得分:7)
你走在正确的轨道上:
from package.module1 import class1
如果您说是从同一个套餐中导入,也可以
from .module1 import class1
.
表示“执行导入的模块的包层次结构中的位置”。有关信息,请参阅the documentation。