python中 import 和from ... import 的区别

先看一个例子:
我自定义的一个moudle,里面有一个方法sayhi,还有一个变量version
#!/usr/bin/env python
# coding=utf-8
# Filename: mymodule.py
def sayhi():
print ("Hi this is mymodule speaking")

version="1.0"

引用这个module的两种方式
#!/usr/bin/env python
# coding=utf-8

# 方式一
import mymodule

mymodule.sayhi()
print ("Version ",mymodule.version)

#方式二
from mymodule import sayhi,version

sayhi()
print ("Version ",version )

这两种方式都能正常运行,并且结果都一样,

如果使用import的话,就需要使用导入的module名称来引用模块的方法,成员变量了
如果使用from … import 就可以直接使用该模块中的方法 成员变量了
可以理解为 from … import 是java中的静态导入,而import 语句就是java中的正常导入

一般来说,应该避免使用from … import 而使用import语句,因为这样可以使你的程序更加易读,也可以避免名称冲突

posted @ 2018-01-10 14:20  oneqhw  阅读(440)  评论(0编辑  收藏  举报