1 相关定义和概念
1.1 函数的理解
一段被封装的可以重复调用的代码。
1.2 函数定义语法结构
def 函数名(形参1,形参2):要封装的逻辑代码
# 注意:函数可以有返回值也可以没有返回值,没有返回值的结果是None
1.3 函数调用的语法结构
函数名(形参1,形参2)
1.4 简单实例
1.4.1 题目内容
定义一个求a+b之和的函数,且调用时传的参数为8、6
1.4.2 示例代码
def sum1(m, n):return m + na = int(input("请输入a的值: "))
b = int(input("请输入b的值: "))
print(f"{a}+{b}的和为: {sum1(a, b)}")
1.4.3 运行截图
2 函数传参的几种方式
2.1 不按照顺序传参
2.1.1 使用心得
函数名(实参2=值2,实参1=值1,实参3=值3)
2.1.2 示例代码
def print_1(a, b, c):print("a: ", a)print("b: ", b)print("c: ", c)print_1(b=1, a=2, c=3)
2.1.3 运行结果
2.2 不定长传参(元组版)
2.2.1 使用心得
def 函数名(*args):函数体内容
2.2.2 示例代码
# *名称可以随便定义,但通常是*args
# *args可以理解成一个元组
def print_1(*args):print("args: ", args[-1])print_1(1, 66, "hello")
2.2.3 运行结果
2.3 不定长传参(字典版)
2.3.1 使用心得
# *名称可以随便定义,但通常是*kwargs
# *kwargs可以理解成一个字典
def print_1(**kwargs):print("kwargs: ", kwargs)print("kwargs中name的值为: ", kwargs["name"])print("kwargs的类型: ", type(kwargs)) # <dictprint_1(name="平凡的世界", author="路遥", honor="第三届茅盾文学奖")
2.3.2 示例代码
# *名称可以随便定义,但通常是*kwargs
# *kwargs可以理解成一个字典
def print_1(**kwargs):print("kwargs: ", kwargs)print("kwargs中name的值为: ", kwargs["name"])print("kwargs的类型: ", type(kwargs)) # <dictprint_1(name="平凡的世界", author="路遥", honor="第三届茅盾文学奖")
2.3.3 运行结果
2.4 常规传参
2.4.1 使用心得
函数名(值1,值2,值3)
# 值1、值2、值3分别和形参中的第一个形参、第二个形参、第三个形参相对应
2.4.2 示例代码
def sum(a, b):return a + ba = int(input("请输入a的值: "))
b = int(input("请输入b的值: "))
print(f"{a}+{b}的和为: {sum(a, b)}")
2.4.3 运行结果
2.5 函数名传参
2.5.1 使用心得
函数名2(函数名1)
2.5.2 示例代码
def fun1():print("执行fun1函数")def fun2(x):print("执行fun2函数")x()fun2(fun1)