【Python】函数进阶 ② ( 函数参数传递类型简介

2026-06-30 00:58:00

一、函数参数传递类型函数参数传递类型 :

位置参数 : 函数 调用时 按照参数在函数 定义时 的位置进行传递 ; ( 形参 和 实参 顺序 和 个数 必须一一对应 )关键字参数 : 函数 调用时 使用 " 键 = 值 " 的形式 , 传入参数 ;缺省参数 : 函数 调用时 , 如果没有传入该参数 , 使用缺省参数默认值作为实参 ;不定长参数 : 在 定义函数 时 , 不确定 调用时会传递多少个参数 , 函数调用时可以传入任意个参数 ;1、缺省参数" 缺省参数 " 又称为 " 默认参数 " , 在 定义函数时 , 可以为参数设置一个默认值 ,

在调用函数时 , 可以选择 传入该 缺省参数 , 也可以选择 不传入 缺省参数 ,

如果不传入参数 则 使用默认值作为实际参数 ;如果 传入参数 则 使用传入的值作为实际参数 ;设置 的 缺省参数 , 在定义时 , 必须放在 形参列表的最后 ;

代码示例 :

代码语言:javascript复制"""

函数多返回值 代码示例

"""

def info(name, age=16):

print(f"{name} is {age} years old")

# 缺省参数 - 与关键字参数结合使用

# Jerry is 16 years old

info(name='Jerry')

# 缺省参数 - 与位置参数结合使用

# Trump is 16 years old

info('Trump')

# 缺省参数 - 传入缺省参数

# Joe is 21 years old

info('Joe', age=21)执行结果 :

代码语言:javascript复制Jerry is 16 years old

Trump is 16 years old

Joe is 21 years old2、不定长参数" 不定长参数 " 又称为 可变参数 , 在 定义函数 时 , 不确定 调用时会传递多少个参数 , 就使用 不定长参数 ;

在 函数调用时 , 不定长参数 , 可以传入 若干 个参数 ;

不定长参数 又分为 两种类型 :

位置传递参数关键字传递参数通过位置传递的不定长参数通过位置传递的不定长参数语法 :

代码语言:javascript复制def 函数名(*args)

# 函数体*args 就是不定长参数 , 所有传入的参数 , 都会被 args 参数接收 , 这些参数都会被封装到一个 元组 tuple 中 ;

args 可以理解为 元组 数据容器 类型 ;

注意 : 通过位置传递的 不定长参数 前面有一个 * 符号 ;

代码示例 :

代码语言:javascript复制"""

函数多返回值 代码示例

"""

def info(*args):

print(args)

# 不定长参数 - 位置传递参数

# ('Tom',)

info('Tom')

# 不定长参数 - 位置传递参数

# ('Trump', 80)

info('Trump', 80)执行结果 :

代码语言:javascript复制('Tom',)

('Trump', 80)通过关键字传递的不定长参数通过关键字传递的不定长参数语法 :

代码语言:javascript复制def 函数名(**args)

# 函数体**args 就是通过关键字传递的不定长参数 , 所有传入的参数 , 都是由键值对组成的 , 这些键值对都会被封装到字典中 ;

args 可以理解为 字典 数据容器 类型 ;

注意 : 通过位置传递的 不定长参数 前面有两个 * 符号 ;

代码示例 :

代码语言:javascript复制"""

函数多返回值 代码示例

"""

def info(**args):

print(args)

# 不定长参数 - 关键字传递参数

# {'name': 'Tom', 'age': 18}

info(name='Tom', age=18)执行结果 :

代码语言:javascript复制{'name': 'Tom', 'age': 18}

努尔哈赤时期的五大臣、四大贝勒分别都是谁?他们最后结果如何?
ark方舟服务器开服推荐什么系统,什么配置好?