如果我们可以import module1.module2
,我们为什么需要import module1
?
示例:
当我们也可以执行import tkinter.messagebox
并且仍然可以执行tkinter.messagebox.askyesno(“blah text”)
时,为什么我们需要import os
并执行os.path.join(“/“, “blah”)
?
我定期在代码中使用import os
,并在其他人的代码中看到import tkinter.messagebox
。
答案 0 :(得分:2)
如果module1.module2
本身导入module1
,则只能在没有明确导入的情况下使用module2
。例如,os
在内部导入其他几个路径处理模块之一(取决于操作系统)并将其称为path
。这个path
只是os
模块中的一个变量,可以让您访问os.path
模块。
答案 1 :(得分:1)
这是一个基本原理。一般来说,当人们做一个
import os
通常,他们使用同时属于os.path
和os
的方法,例如os.path. abspath()
和os.getcwd()
。因此导入os
更有意义。如果你确信你将只使用os.path
中的方法,你也可以使用import os.path
,这完全没问题。
同样,如果您确定要使用tkinter.messagebox
中的方法,那么
import tkinter.messagebox