请帮助理解这三个导入语句的区别是什么,以及它们执行后会发生什么。
>>import lxml
>>import lxml.html
>>from lxml import html
我理解第一次导入将导致整个lxml模块在当前范围内可用。
第三次导入导致只有html子模块在范围内可用。
那么中/秒导入的最终效果是什么?如果它有类似的效果 那两个中的任何一个然后哪个是最恐怖的方式,为什么要用两种方法来达到同样的效果呢?
由于
答案 0 :(得分:5)
import lxml.html
时,您需要使用lxml.html
引用您导入的模块。from lxml import html
时,您可以使用html
来引用
它。如果有另一个html
模块,您已导入,使用from lxml import html
可能会导致冲突,但import lxml.html
则不会,因为有名称空间在它之前lxml
。
您可以使用from xx import v
从模块v
导入对象xx
,但不能使用import xx.v
执行此操作。