我认为它们在功能上是相同的,除了一些微不足道的底层区别。如果是这样,哪种形式更符合Python风格?
当涉及到包和模块时,x.y
形式使得这一点变得隐含,因此在这种情况下应该优先使用该形式。
如果t
是在模块y
中定义的符号,则:
>>> from x.y import t as z
>>>
...但是!
>>> import x.y.t as z
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named t
>>>
点符号表示模块的意义,因此在涉及到模块的时候应该使用点符号。