Python3 将函数存储在模块中,导入模块的几种方法的简单介绍

Python3 将函数存储在模块中,导入模块的几种方法的简单介绍

1. 导入整个模块

要让函数是可导的, 得先创建模块。 模块是扩展名为 .py 的文件, 包含要导入到程序中的全部代码。 下面创建一个包含函数 make_pizza()的模块。

pizza.py

def make_pizza(size, *toppings):
    """概述要制作的披萨"""
    print("\nMaking a " + str(size) +
          "-inch pizza with the following toppings:")
    for topping in toppings:
        print("- " + topping)

接下来,在 pizza.py 所在的文件下,再新建一个 making_pizzas.py 文件,这个文件导入刚刚创建的模块, 在调用make_pizza():

import pizza

pizza.make_pizza(16, 'pepperoni')
pizza.make_pizza(12, 'mushrooms', 'green peppers', 'extra cheese')

Python读取这个文件的时候, 代码运行import pizza让Python打开文件pizza.py, 并将其中的所有含少数都复制到这个程序中。 你看不到复制的代码, 因为这个程序在运行时, Python在幕后辅助这些代码。 只要知道, 在makeing_pizzas.py中, 可以使用pizza.py中定义的所有函数。

输出:


Making a 16-inch pizza with the following toppings:
- pepperoni

Making a 12-inch pizza with the following toppings:
- mushrooms
- green peppers
- extra cheese


这就是一种导入方法:只需要编写一条import语句并在其中指定模块名, 就可以在程序中使用这个模块的所有函数。
使用下面语法可以使用其中的任何一个函数:

module_name.function_name()

2. 导入特定的函数

可以导入模块的特定函数,语法如下:

from module_name import function_name

通过用逗号分隔函数名, 可根据需要从模块中导入任意数量的函数:

from module_name import function_0, function_1, function_2

对于前面的makeing_pizzas.py的例子, 如果只想导入使用的函数,代码如下:

from pizza import make_pizza

make_pizza(16, 'pepperoni')
make_pizza(12, 'mushrooms', 'green peppers', 'extra cheese')

输出结果一样, 使用这种语法时, 调用函数时就无需使用句点, 由于在import语句中显示地导入了函数make_pizza(), 因此调用它时只需要指定名称。

3. 使用 as 给函数指定别名

示例代码:

from pizza import make_pizza as mp

mp(16, 'pepperoni')
mp(12, 'mushrooms', 'green peppers', 'extra cheese')

指定别名的通用语法如下:

from module_name import function_name as fn

4. 使用 as 给模板指定别名

示例代码:

import pizza as p

p.make_pizza(16, 'pepperoni')
p.make_pizza(12, 'mushrooms', 'green peppers', 'extra cheese')

给模块指定别名的通用语法如下:

import module_name as mn

5. 导入模块中的所有函数

示例代码:

from pizza import *

make_pizza(16, 'pepperoni')
make_pizza(12, 'mushrooms', 'green peppers', 'extra cheese')

import语句中的星号让Python将模块pizza中的每个函数都复制到这个程序文件中。由于导入了每个函数, 可通过名称来调用每个函数, 而无需使用句点表示法。

你可能感兴趣的:(Python3)