import .. #导入整个模块
from .. import .. #导入模块中的类、函数或者变量
from .. import * #导入模块中的所有公开成员
from .. import .. as .. #这个是给导入的成员取个别名
具体来看:
example:
1.import object
导入时自动生成一个以模块名为名的object使用时需要用这个object来调用
root = object.member()
2.from object import member
导入了我们需要的模块中的类、函数或者变量,使用时用我们可以省略模块名
root = member()
3.from object import *
这个和2的区别在于不是特定的引入而是将他的全部公开成员导入
方法同2
4.from object import member as new_member
给我们导入的成员改个名字
root = new_member()
以上为个人理解,如有问题望指正
总结:什么时候你应该使用 from module import?
如果你要经常访问模块的属性和方法,且不想一遍又一遍地敲入模块名,使用 from module import。
如果你想要有选择地导入某些属性和方法,而不想要其它的,使用 from module import。
如果模块包含的属性和方法与你的某个模块同名,你必须使用 import module 来避免名字冲突。
但是要注意的是:尽量少用 from module import * ,因为判定一个特殊的函数或属性是从哪来的有些困难,并且会造成调试和重构都更困难。