🐍 知识库 PythonL6 这篇笔记暂无摘要。 分类 Python 难度 基础 阅读 3 分钟 浏览 11 更新 2026-7-14 14:55:43 🌐 所有人可见 登录后记录进度 导出 MD 复制链接 打印 / PDF ## 一、初识函数 ### 1.1 函数的基本概念 函数是组织好的、可重复使用的代码块,用于执行特定任务。在Python中,函数通过`def`关键字定义,遵循"输入-处理-输出"的逻辑模型,类似"橙汁售卖机":投入参数(橙子数量),经过处理(榨汁),返回结果(橙汁容量)。 ### 1.2 函数的定义与调用 #### 定义格式 ```python def 函数名(参数): 语句1 语句2 return 返回值 ``` + `def`:定义函数的关键字 + `函数名`:遵循标识符命名规则(字母、数字、下划线,不能以数字开头) + `参数`:用括号包裹,多个参数用逗号分隔,可选 + `return`:结束函数并返回值,可选 #### 调用示例 ```python def get(a): c = a * 4 return c # 调用函数并打印结果 i = get(40) print(i) # 输出:160 m = get(50) print(m) # 输出:200 b = get(60) print(b) # 输出:240 ``` ### 1.3 参数与返回值 + **参数**:函数定义时指定的"输入变量",调用时需传入对应值 + **返回值**:函数处理后的结果,通过`return`语句返回,若无`return`则默认返回`None` **案例:酸碱值检测** ```python def test(ph): if ph < 7: return "酸性" elif ph > 7: return "碱性" else: return "中性" # 调用函数并根据返回值执行不同逻辑 a = test(6) if a == "酸性": print("红色药水") else: print("蓝色药水") print("next") b = test(13) if b == "酸性": print("红色药水") else: print("蓝色药水") ``` ## 二、函数的进阶应用 ### 2.1 函数的组成与调用过程 #### 2.1.1 函数的组成部分 以`action`函数为例: ```python def action(x): if x == "green": return "jump" else: return "run" # 调用过程解析 a = "green" b = action(a) # 传入参数a,执行函数内逻辑,返回结果赋值给b print(b) # 输出:jump ``` #### 2.1.2 调用流程 1. 程序执行到函数调用时,暂停当前流程 2. 将参数值传递给函数的参数变量 3. 执行函数体内的语句 4. 遇到`return`时返回结果,并恢复主程序流程 ### 2.2 不同类型的函数 #### 2.2.1 无参数无返回值的函数 ```python def move(): print("down") print("down") print("down") print("right") print("right") # 调用方式 move() # 直接调用,无参数传递,无返回值接收 ``` #### 2.2.2 有参数无返回值的函数 ```python def move(a): if a == "L": print("left") print("left") print("down") print("down") print("right") print("right") elif a == "C": print("down") print("down") print("down") print("right") print("right") # 调用示例 move("L") # 输出与L相关的移动指令 move("C") # 输出与C相关的移动指令 ``` #### 2.2.3 有多个参数的函数 ```python def detect(c): if c == 2: return 1 else: return 0 # 多参数函数示例(扩展) def calculate(a, b, op): if op == "+": return a + b elif op == "-": return a - b elif op == "*": return a * b elif op == "/": return a / b else: return "无效操作" # 调用多参数函数 result = calculate(10, 5, "+") print(result) # 输出:15 ``` ### 2.3 函数的条件逻辑与输入处理 ```python def action(x): if x == "blue" or x == "green": return "jump" elif x == "yellow": return "run" else: return "sit" # 结合输入的交互案例 while True: a = input("请输入颜色(blue/green/yellow/brown):") if a == "brown": r = action(a) print(r) break ``` ## 三、自定义函数与内置函数 ### 3.1 自定义函数 用户根据需求自行定义的函数,格式如前文所述。**核心优势**: + 封装重复逻辑,避免代码冗余 + 提高代码可读性和可维护性 + 支持参数化配置,增强灵活性 ### 3.2 内置函数 Python自带的函数,无需定义即可直接使用,例如: + `print()`:输出内容到控制台 + `input()`:获取用户输入 + `len()`:获取序列长度 + `max()`:获取最大值 + `str()`:类型转换为字符串 ### 3.3 自定义函数与内置函数的对比 | 类型 | 定义方式 | 示例 | 应用场景 | | --- | --- | --- | --- | | 自定义函数 | 用`def`关键字自行定义 | `def add(a,b): return a+b` | 处理特定业务逻辑,如数据清洗、业务计算 | | 内置函数 | Python内置,直接调用 | `len([1,2,3])` | 通用功能,如类型转换、集合操作 | ## 四、综合应用案例 ### 案例1:简易计算器 ```python def calculator(a, b, operator): """ 简易计算器函数 :param a: 第一个操作数 :param b: 第二个操作数 :param operator: 操作符(+,-,*,/) :return: 计算结果 """ if operator == "+": return a + b elif operator == "-": return a - b elif operator == "*": return a * b elif operator == "/": if b != 0: return a / b else: return "除数不能为0" else: return "不支持的操作符" # 调用计算器 print(calculator(10, 5, "+")) # 15 print(calculator(10, 5, "-")) # 5 print(calculator(10, 5, "*")) # 50 print(calculator(10, 5, "/")) # 2.0 print(calculator(10, 0, "/")) # 除数不能为0 print(calculator(10, 5, "%")) # 不支持的操作符 ``` ### 案例2:角色移动控制系统 ```python def move_character(direction, steps): """ 角色移动控制函数 :param direction: 移动方向(L/R/U/D) :param steps: 移动步数 """ if direction == "L": print(f"向左移动{steps}步") for _ in range(steps): print("←") elif direction == "R": print(f"向右移动{steps}步") for _ in range(steps): print("→") elif direction == "U": print(f"向上移动{steps}步") for _ in range(steps): print("↑") elif direction == "D": print(f"向下移动{steps}步") for _ in range(steps): print("↓") else: print("无效的移动方向") # 调用移动函数 move_character("L", 3) move_character("R", 2) move_character("U", 1) move_character("D", 4) move_character("X", 5) # 无效方向 ``` ## 五、学习总结与实践建议 ### 5.1 核心知识点回顾 1. 函数定义:`def 函数名(参数):`,通过`return`返回值 2. 函数类型:无参无返回、有参无返回、多参有返回 3. 调用流程:传参→执行→返回结果 4. 内置函数与自定义函数的区别与应用 ### 5.2 实践建议 1. **基础练习**:实现一个`check_age(age)`函数,根据年龄判断是否成年(≥18岁) 2. **进阶练习**:编写`calculate_area()`函数,支持计算矩形、圆形面积(提示:通过参数区分图形类型) 3. **综合项目**:设计一个"单词翻译器",通过输入英文单词返回中文释义(可使用字典存储词汇对) ### 5.3 常见错误与注意事项 + 函数定义后需调用才会执行 + 参数数量需与定义一致,否则报错 + `return`语句后代码不会执行 + 注意缩进规范(Python通过缩进区分代码块) 学习交流公开阅读不需要登录登录后可以评论、收藏并同步学习进度。登录暂时还没有评论。
学习交流