关键字 def

传递任意参数的实参

def getargs(*args):
return args
args = getargs([1,2,3], (23,45), 'Hello Kitty')
print(args)
([1, 2, 3], (23, 45), 'Hello Kitty')
传递任意数量的关键字形参
def build_profile(first, last, **user_info):
profile = {}
profile['first_name'] = first
profile['last_name'] = last
for key, value in user_info.items():
profile[key] = value
return profile
user_info = build_profile(
'Alice', 'Bob', location = 'Beijing', field = 'State'
)
print(user_info)
{'first_name': 'Alice', 'last_name': 'Bob', 'location': 'Beijing', 'field': 'State'}

形参 **user_info 中的两个星号让Python创建一个名为 user_info 的空字典,并将收到的所

有名称 — 值对都封装到这个字典中。在这个函数中,可以像访问其他字典那样访问 user_info 中的

名称 — 值对

函数用来创建模块

# compute.py
def add(num_1, num_2):
return num_1 + num_2
# test.py
import compute
print(compute.add(1,2)) // 3

模块里的方法调用

module_name.function_name ()

导入特定的函数

from module_name import function_name

from module_name import function_0 , function_1 , function_2

使用 as 给函数指定别名

from module_name import function_name as fn

使用 as 给模块指定别名

import module_name as mn

导入模块中的所有函数

使用星号( * )运算符可让Python导入模块中的所有函数:

from module_name import *