成为大佬第十二天(函数)
2026/7/23 6:36:16 网站建设 项目流程

一、函数定义

函数是组织好的、可重复使用的代码块,用于执行特定任务。它可以将复杂问题分解为小模块,提高代码的可读性复用性可维护性

定义

def 函数名(): 函数体

调用

函数名()

二、函数参数

形参 函数定义时括号中的占位符 像变量名,等待被赋值 实参 函数调用时传入的具体值 像实际数据,传给形参使用
def my_print(start, stop,msg): """ :param start: 开始 :param stop: 结束 :param msg: 打印信息 """ for i in range(start, stop): print(i, msg) my_print(1, 6 , "困") my_print(1, 10 ,"不困")

三、参数的类型

1. 位置参数

按位置顺序传入,数量必须匹配。

#位置参数 def can(msg, n): for i in range(n): print(msg) can("醒醒",10)

2. 关键字参数

调用时用参数名=值的方式指定,顺序可变。

#关键字参数 def can(msg, n): for i in range(n): print(msg) can("吃饭",n=2) can(n=2,msg="吃饭")

3. 默认参数

定义时赋值,调用时可传可不传。

#默认参数 def can(msg="睡觉", n =3): for i in range(n): print(msg) can() can(msg="困") can(n=2)

4. 可变位置参数*args

接收任意多个位置参数,打包为元组。

# 可变位置参数 *args # 接收任意多个位置参数,打包为元组。 def my_print(*args, **kwargs): print(args) print(kwargs) my_print(1,2,3,4,5,a = 10, b = 20, c=30)

5. 可变关键字参数**kwargs

接收任意多个关键字参数,打包为字典。

def my_print(a,b=1,*args,**kwargs): print(a,b) print(args) print(kwargs) my_print(b=2,a=2) my_print(1,2,123,456,d=3,e=2,f=1)

6.解包,将包拆开,使内部数据与参数对应

# 解包 要一一对应 def add(a, b, c): return a + b + c datas = [10, 20, 30] print(add(*datas)) def greet(name, age): print(f"{name} 今年 {age} 岁") data = { "name": "小明", "age": 20 } greet(**data)

四、lambda 表达式(匿名函数)

lambda是 Python 中的匿名函数关键字,用于创建一行表达式的简单函数。它没有函数名,用完后即释放。

# 定义一个没有形参 没有返回值的匿名函数 f2 = lambda: print(888) print(type(f2), f2.__name__) f2()

# 定义一个没有形参 有返回值的匿名函数 f3 = lambda: (100, 200, 300) print(type(f3), f3.__name__) print(f3())

# 定义有形参 有返回值的匿名函数 f4 = lambda x: x + 100 print(f4(50))

print((lambda x, y, z: x + y + z)(10, 20, 30))

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询