2026/4/18 7:22:54
网站建设
项目流程
上海亿网站建设,网站地址大全,中城投建设集团网站,建设局是干什么的单位#x1f3af; 函数的核心理念#xff1a;存储与重用#x1f4cc; 核心原则#xff1a;DRY#xff08;Dont Repeat Yourself#xff09;避免重复#xff1a;相同的代码只写一次#xff0c;多次使用提高效率#xff1a;减少代码量#xff0c;便于维护和更新增强可读性 函数的核心理念存储与重用 核心原则DRYDont Repeat Yourself避免重复相同的代码只写一次多次使用提高效率减少代码量便于维护和更新增强可读性将复杂逻辑封装为有意义的名称 函数的基本概念 函数定义pythondef function_name(parameters): 文档字符串可选但推荐 # 函数体代码 return result # 可选没有return则返回None 函数调用过程定义阶段告诉Python记住这个函数但不执行调用阶段执行函数体中的代码返回阶段回到调用处继续执行后续代码pythondef greet(): # 1. 定义函数不执行 print(Hello!) greet() # 2. 调用函数执行 print(World) # 3. 继续执行 # 输出: Hello! World 函数执行流程 调用堆栈可视化text主程序执行 → 遇到函数调用 → 暂停主程序 ↓ 进入函数执行 → 执行函数体代码 ↓ 函数返回 → 回到主程序暂停处 ↓ 继续执行主程序 关键理解函数调用就像是暂时暂停当前操作等待函数返回一个值来替换调用位置 内置函数Built-in Functions️ 常用内置函数示例函数描述示例print()输出内容print(Hello)input()获取用户输入name input(Name? )len()获取长度len(Hello)→5type()获取类型type(42)→class intint()转换为整数int(42)→42float()转换为浮点数float(3.14)→3.14str()转换为字符串str(100)→100max()返回最大值max(1, 5, 3)→5min()返回最小值min(1, 5, 3)→1sum()求和sum([1, 2, 3])→6sorted()排序sorted([3, 1, 2])→[1, 2, 3]range()生成序列list(range(3))→[0, 1, 2] 函数输入-处理-输出模型text输入(参数) → 函数(处理) → 输出(返回值) 自定义函数 定义与调用示例python# 定义函数 def greet(name): # name是参数 向指定的人问好 print(fHello, {name}!) # 调用函数 greet(Alice) # Alice是参数值 greet(Bob) # Bob是参数值 # 输出: # Hello, Alice! # Hello, Bob! 参数 vs 参数值术语定义位置示例参数Parameter函数定义时接收输入的变量函数定义括号内def func(param):参数值Argument调用函数时传入的具体值函数调用括号内func(value) 类比理解参数像是咖啡机的咖啡粉槽等待接收参数值像是实际放入的咖啡粉具体内容 返回值Return Value 返回值的作用停止函数执行遇到return立即结束函数传递结果将计算结果返回给调用者pythondef add(a, b): 计算两个数的和 result a b return result # 1. 停止函数 2. 返回result的值 # 调用并接收返回值 sum_result add(3, 5) # add(3, 5) 被替换为 8 print(sum_result) # 输出: 8 返回值流程pythondef double(x): return x * 2 # 调用过程 # 1. 执行 double(5) # 2. double函数返回 10 # 3. 10 替换掉 double(5) # 4. y 被赋值为 10 y double(5)⚪ 无返回值函数 None类型无return语句函数默认返回None有return无值return或return None作用执行操作但不返回具体结果python# 无返回值函数执行操作 def print_welcome(name): print(fWelcome, {name}!) # 隐式返回 None # 有返回值函数计算结果 def calculate_total(price, quantity): total price * quantity return total # 返回计算结果 # 使用示例 print_welcome(Alice) # 只执行操作不接收返回值 result calculate_total(10, 3) # 接收返回值 print(fTotal: ${result})️ 函数设计实践1. 带参数和返回值的函数pythondef calculate_area(width, height): 计算矩形面积 area width * height return area # 使用 room_area calculate_area(5, 4) print(f房间面积: {room_area}平方米)2. 多语言问候函数pythondef greet(lang): 根据语言返回问候语 if lang es: # 西班牙语 return Hola elif lang fr: # 法语 return Bonjour elif lang cn: # 中文 return 你好 else: # 默认英语 return Hello # 使用 print(greet(es)) # Hola print(greet(fr)) # Bonjour print(greet(en)) # Hello3. 组合多个函数pythondef get_rectangle_area(width, height): 计算矩形面积 return width * height def get_triangle_area(base, height): 计算三角形面积 return 0.5 * base * height def calculate_total_area(): 计算房间总面积矩形三角形 rect_area get_rectangle_area(10, 5) tri_area get_triangle_area(4, 3) total rect_area tri_area return total print(f总面积: {calculate_total_area()}平方米) 为什么要使用函数✅ 主要优点模块化组织python# 将代码组织成逻辑段落 def process_data(data): 数据处理函数 cleaned clean_data(data) analyzed analyze_data(cleaned) return generate_report(analyzed)避免重复python# 重复代码不好 print( * 50) print(报告标题) print( * 50) # ... 很多代码 ... print( * 50) print(报告结尾) print( * 50) # 使用函数好 def print_separator(): print( * 50) print_separator() print(报告标题) print_separator()简化复杂代码python# 复杂逻辑拆分为小函数 def validate_user_input(input_data): 验证用户输入 if not check_format(input_data): return False if not check_length(input_data): return False if not check_content(input_data): return False return True创建可重用库python# my_utils.py - 可以分享给其他人 def format_currency(amount): 格式化货币显示 return f${amount:,.2f} def calculate_tax(price, tax_rate): 计算税额 return price * tax_rate def generate_invoice(items, tax_rate0.08): 生成发票 # 使用上面的函数 pass 函数使用指南场景建议示例重复代码提取为函数多处相同的计算逻辑复杂逻辑拆分为多个小函数数据处理流程特定功能创建专用函数数据验证、格式化团队协作建立函数库共享工具函数 常见错误与调试1. 忘记冒号python# 错误 def say_hello() # 缺少冒号 print(Hello) # 正确 def say_hello(): # 有冒号 print(Hello)2. 缩进错误python# 错误混用空格和Tab def my_func(): print(第一行) # 4个空格 print(第二行) # 1个Tab不同编辑器可能不同 # 正确统一使用4个空格 def my_func(): print(第一行) # 4个空格 print(第二行) # 4个空格3. 参数不匹配python# 定义 def greet(name, age): print(f{name} is {age} years old) # 错误调用缺少参数 greet(Alice) # TypeError: missing 1 required argument # 正确调用 greet(Alice, 25)4. 返回值使用错误python# 无返回值函数 def print_sum(a, b): print(a b) # 没有return语句 # 错误试图使用返回值 result print_sum(3, 5) # result是None print(result * 2) # TypeError: 不能将None与数字相乘 核心要点总结1. 函数三要素名称描述函数功能参数接收输入数据返回值输出处理结果2. 定义与调用定义使用def关键字只定义不执行调用使用函数名加括号传入参数值3. 返回值机制有返回值使用return返回具体结果无返回值默认返回None用于执行操作4. 设计原则单一职责一个函数只做一件事明确命名函数名应清晰表达功能良好注释使用文档字符串说明用途编程思维函数是编程中的基本构建块。就像乐高积木一样将小块的、专门的功能组合起来可以构建出复杂而强大的程序。学会设计好的函数是成为高效程序员的关键一步