函数的有点之一是,使用他们可将代码块与主程序分离。通过给函数指定描述性名称,可以让主程序容易理解的多。
还可以将函数存储在被称为模块的独立文件,再将模块导入到主程序中。
import语句允许在当前运行的程序文件中使用模块中的代码。
通过将函数存储在独立的文件中,可隐藏程序代码的细节,将重点放在程序的高层逻辑上。
要让函数是可导入的,得先创建模块。
模块是扩展名为.py的文件,包含要导入到程序中的代码。
1、导入整个模块 (调用被导入的模块中的函数,可指定导入的模块的名称pizza和函数名make_pizza(),并使用句点分隔他们;即pizza.make_pizza() )
调用格式:module_name.function.name()
注意:两个文件需要在同一个目录下。
源码:
pizza.py
def make_pizza(size, *toppings):
print("
Making a "+str(size)+" pizza with the following toppings: ")
for topping in toppings:
print("-" + topping)
making_pizzas.py
import pizza
pizza.make_pizza(16,'pepperoni')
pizza.make_pizza(12, 'mushrooms','green peppers', 'extra cheese')
运行结果:
python在读取making_pizzas.py的时候,代码行import pizza让python打开文件pizza.py,并将其中的所有函数都复制到这个程序中。
2、导入特定的函数
导入方法语法:from module_name import function_name
可通过逗号分隔函数名,导入任意数量的函数
from module_name import function_0, function_1, function_2
上述making_pizza.py示例,可通过如下方法导入函数
from pizza import make_pizza
make_pizza(16,'pepperoni')
make_pizza(12, 'mushrooms','green peppers', 'extra cheese')
3、使用as给函数指定别名
指定别名的通用语法如下:from module_name import function_name ad fn
示例代码:
from pizza import make_pizza as mp
mp(16,'pepperoni')
mp(12, 'mushrooms','green peppers', 'extra cheese')
上面的import语句将函数make_pizza重命名为mp();每当调用make_pizza()时,都可简写成mp()。
4、使用as给模块指定别名
给模块指定别名的通过格式如下:import mudule_name as mn
5、导入模块中的所有函数
使用星号运算符可让python导入模块中的所有函数
通用格式:from module_name import *
示例代码:
from pizza import *
make_pizza(16,'pepperoni')
make_pizza(12, 'mushrooms','green peppers', 'extra cheese')