目录
我们可以在编写程序时将函数存储在被称为模块的独立文件中,再将模块导入到主程序中(必须的步骤)。port语句允许在当前运行的程序文件中使用模块中的代码。
模块是扩展名为.py的文件,包含要导入到程序中的代码。
模块的方法有很多种:
1、导入整个模块
导入模块方法:
import module_name(模块名)
扫描二维码关注公众号,回复:
4274795 查看本文章
调用方法:
module_name.function_name()
要让函数是可导入的,需要创建模块。
创建一个制作pizza的模块(pizza.py):
#!/usr/bin/env python
# -*- coding:utf-8 -*-
def make_pizza(size, *toppings):
"""概述要制作的比萨"""
print("\nMaking a " + str(size) + "-inch pizza with the following toppings:")
for topping in toppings:
print("- " + topping)
另外在同目录下创建一个make_pizza.py的文件,这个文件导入刚创建的模块,再调用make_pizza()函数两次:
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# 导入pizza模块
import pizza
pizza.make_pizza(16, 'pepperoni') # 调用模块函数:(模块名.函数名)
pizza.make_pizza(12, 'mushrooms', 'green peppers', 'extra cheese')
运行结果为:
上述代码在运行时,代码行import pizza让Python打开文件pizza.py,并将其中的多有函数都复制到主程序中,这些复制是Python
幕后进行复制的。当我们导入pizza.py这个模块时,我们就可以使用pizza.py中定义的所有函数。
2、导入特定的函数
我们也可以在导入时只导入模块中的特定函数
导入方法如下(可以导入任意数量函数,逗号分隔):
module_name import function_name1, function_name2,function_3
调用方法:
function_name()
对于上述pizza的示例,如果只想导入使用的函数,代码类似下面:
# 导入pizza模块中的make_pizza()函数
from pizza import make_pizza
make_pizza(16, 'pepperoni')
make_pizza(12, 'mushrooms', 'green peppers', 'extra cheese')
3、使用as给函数指定别名
关键字as给函数或模块重命为你提供的别名
指定别名方法:
from module_name import function_name as fn
如上述例子,将make_pizze()指定别名mp(),代码类似如下:
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# 导入pizza模块中的make_pizza()函数,并制定别名mp
from pizza import make_pizza as mp
mp(16, 'pepperoni')
mp(12, 'mushrooms', 'green peppers', 'extra cheese')
4、导入模块中的所有函数
使用星号(*)运算符可让Python导入模块中的所有函数
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# 导入pizza模块中的所有函数
from pizza import *
make_pizza(16, 'pepperoni')
make_pizza(12, 'mushrooms', 'green peppers', 'extra cheese')
5、总结
模块在使用时,有两种方式:
- 直接导入模块,程序可以使用模块中所有定义的函数,调用方法为:module_name.function_name()(需要句点表示法)
- 导入模块中的特定函数(上述2所讲)或者全部函数(上述4所讲),在调用函数时,需要使用模块名,直接使用函数名就可以调用:function_name()。