5200.8.8 模块化

Storing Your Functions in Modules

(One advantage of functions…) 你可以把函数存到一个文件中,被称为module,然后你可以 importing 这个 module 到你的主程序。import 语句的作用是让 python 把模块中的代码在当前运行的程序文件中可用。

(Storing your functions in a separate…) 使用 module 可以隐藏函数细节,让你专注于高层级的逻辑。你还可以把文件分享给其他程序使用。

Importing an Entire Module

(To start importing functions…) module 就是一个以 py 结尾的 python 文件。

def make_pizza(size, *toppings):
    """Summarize the pizza we are about to make."""
    print(f"\nMaking a {size}-inch pizza with the following toppings:")
    for topping in toppings:
        print(f"- {topping}")

import module

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

(When Python reads this file…)当Python读取文件时,import pizza这行代码会指示Python打开pizza.py文件,并将其中的所有函数复制到当前程序中。你实际上看不到代码在文件间被复制,因为Python在程序运行前就在幕后完成了代码的复制。

如果使用import pizza完整导入,那module里面的所有方法都可以在这个文件里面使用。

Importing Specific Functions

你也可以 从module里面import 一个指定的函数。

from module_name import function_name
 
 
from module_name import function_0, function_1, function_2

可以这样使用

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