首先你要了解 import 与 from…import 的区别。
- import 模块:导入一个模块;注:相当于导入的是一个文件夹,是个相对路径。
- from…import:导入了一个模块中的一个函数;注:相当于导入的是一个文件夹中的文件,是个绝对路径。
所以使用上的的区别是当引用文件时是:
import //模块.函数 from…import // 直接使用函数名使用就可以了
所以
from…import *:是把一个模块中所有函数都导入进来; 注:相当于:相当于导入的是一个文件夹中所有文件,所有函数都是绝对路径。
结论:
from…import *语句与import区别在于:
import 导入模块,每次使用模块中的函数都要是定是哪个模块。
from…import * 导入模块,每次使用模块中的函数,直接使用函数就可以了;注因为已经知道该函数是那个模块中的了。
import 和 from … import 模块的变量、方法引用差异
还是上面例子中的模块 support.py:
def print_func( par ): print "Hello : ", par return
使用 import 引入并调用 support 模块的正确方法:
#!/usr/bin/python # -*- coding: UTF-8 -*- # 导入模块 import support # 现在可以调用模块里包含的函数了 support.print_func("Runoob")
提示:并不能直接使用 print_func() 实现调用,必须将引入的模块名称当作一个对象,调用这个模块对象下的方法 print_func,这时才能实现调用。
使用 from … import 模块的正确方法:
#!/usr/bin/python # -*- coding: UTF-8 -*- # 导入模块 from support import * # 现在可以调用模块里包含的函数了 print_func("Runoob")
提示:可以直接使用 print_func() 实现调用。
建议:一般来说,推荐使用 import 语句,避免使用 from … import,因为这样可以使你的程序更加易读,也可以避免名称冲突。