让工作化繁为简:用Python实现视频剪辑与制作自动化
上QQ阅读APP看书,第一时间看更新

1.2.3 模块的导入

安装好模块后,还需要在代码中导入模块,才能调用模块的功能。这里主要讲解两种导入模块的方法:import语句导入法和from语句导入法。

1. import语句导入法

import语句导入法会导入指定模块中的所有函数,适用于需要使用指定模块中的大量函数的情况。import语句的基本语法格式如下:

import 模块名

演示代码如下:

1  import math  # 导入math模块
2  import time  # 导入time模块

用该方法导入模块后,在后续编程中如果要调用模块中的函数,则要为函数名添加模块名的前缀,演示代码如下:

1  import math
2  a = math.sqrt(16)
3  print(a)

第2行代码要调用math模块中的sqrt()函数来计算16的平方根,所以为sqrt()函数添加了前缀math。运行结果如下:

1  4.0
2. from语句导入法

有些模块中的函数较多,如果用import语句全部导入,会导致程序运行速度较慢。如果只需要使用模块中的少数几个函数,可以使用from语句导入法,这种方法可以导入指定的函数。from语句的基本语法格式如下:

from 模块名 import 函数名

演示代码如下:

1  from math import sqrt  # 导入math模块中的单个函数
2  from time import strftime, localtime, sleep  # 导入time模块中的多个函数

使用from语句导入法最大的好处是在调用函数时可以直接写出函数名,不需要添加模块名前缀,演示代码如下:

1  from math import sqrt  # 导入math模块中的sqrt()函数
2  a = sqrt(16)
3  print(a)

因为第1行代码中已经写明了要导入哪个模块中的哪个函数,所以第2行代码中可以直接用函数名调用函数。运行结果如下:

1  4.0

这两种导入模块的方法各有优缺点,编程时根据实际需求选择即可。

此外,如果模块名或函数名很长,可以在导入时使用as关键字对它们进行简化,以方便后续代码的编写。通常用模块名或函数名中的某几个字母来代替模块名或函数名,演示代码如下:

1  import numpy as np  # 导入NumPy模块,并将其简写为np
2  from math import factorial as fc  # 导入math模块中的factorial()函数,并将其简写为fc

技巧 使用通配符导入模块

使用from语句导入法时,如果将函数名用通配符“*”代替,写成“from模块名import*”,则和import语句导入法一样,会导入模块中的所有函数。演示代码如下:

1  from math import *  # 导入math模块中的所有函数
2  a = sqrt(16)
3  print(a)

这种方法的优点是在调用模块中的函数时不需要添加模块名前缀,缺点是不能使用as关键字来简化函数名。