一、直接导入模块
import math
print math.log(10)
二、导入模块中的某个函数
from math import log
print log(10)
注意:由于直接导入某个函数调用的时候不写模块名,所以有时会导致混淆,我们可以在导入函数时进行重命名:
from math import log as new_log
print new_log(10)
新函数和原函数拥有相同的函数签名和功能。
三、动态导入模块
如果导入的模块不存在,python会报ImportError错误,利用这个错误,我们可以动态导入模块:
try:
from cStringIO import StringIO
except ImportError:
from StringIO import StringIO
意思是先尝试从cStringIO中导入函数,如果不存在,就从StringIO中导入。(cStringIO是用C语言重写StringIO中的StringIO函数,由于C语言是可编译的,运行会更快,所以我们在导入时可以利用动态导入,优先导入它)