当前位置: 首页 > news >正文

Python 函数学习心得体会

这段时间系统学习了 Python 函数,算是把我之前一直模糊不懂的知识点彻底理顺了。以前写代码都是一堆循环堆在一起,很乱、不好改,重复代码特别多。学完函数之后,我才真正明白为什么要封装代码。

首先我搞懂了普通函数和匿名函数的区别。平时常用的功能、逻辑比较复杂的,就正常定义函数,方便重复使用。如果只是临时用一下、逻辑很简单,比如排序取值,就可以用匿名函数,不用起名,写起来很简洁。

# 普通函数,适合多次调用、逻辑复杂场景 def get_stu_id(stu): return stu["id"] # lambda匿名函数,适合一次性简单逻辑 lambda stu: stu["id"]

这次学习也彻底弄懂了列表和函数是怎么配合工作的。列表只管存数据,函数负责提供规则。比如字典列表排序,程序不知道按什么排,就靠函数取出 id、年龄这些字段,实现自定义排序,之前一直不懂为什么要传函数,现在完全明白了。

stu_list = [{"id":105,"name":"小张"},{"id":102,"name":"小李"}] # 将取值函数传入sorted,完成自定义排序 res = sorted(stu_list, key=get_stu_id)

同时我分清了全局变量和局部变量,也会用对应的关键字修改变量。以前在函数里改值,外面不变,一直踩坑,现在知道了作用域的区别,写代码很少出错了。

num = 10 def modify_global(): global num # 声明操作全局变量 num = 20 def outer(): n = 5 def inner(): nonlocal n # 修改外层嵌套函数变量 n = 8 inner()

还亲手练习了冒泡排序和选择排序,知道了两种排序的特点,一个写着简单但交换多,一个交换少但不稳定,做题的时候能根据情况选择。

# 冒泡核心逻辑 for i in range(n): for j in range(n-i-1): if arr[j]>arr[j+1]: arr[j],arr[j+1]=arr[j+1],arr[j] # 选择排序核心逻辑 for i in range(n): min_idx=i for j in range(i+1,n): if arr[j]<arr[min_idx]: min_idx=j arr[i],arr[min_idx]=arr[min_idx],arr[i]

另外接触了系统模块,学会简单操作电脑路径、文件,还有获取程序运行信息,感觉 Python 能做的事情变多了。

import os,sys os.getcwd() # 获取当前工作路径 sys.path # 获取模块检索路径

最后通过写学生管理系统、成绩管理系统,真正体会到函数的用处。把新增、查询、修改、删除每个功能单独写成函数,代码结构特别清楚,改 bug、加功能都很方便,不会一团乱。

# 管理系统拆分功能函数示例 def add_student(): pass def search_student(): pass def edit_student(): pass
http://www.jsqmd.com/news/1253498/

相关文章:

  • 2026三沙市黄金回收价格行情分析:最新金价走势与卖金时机_转自TXT - 余情未了888
  • QSMODE算法:强化学习与差分进化在机器人路径规划中的融合应用
  • 第九篇:《GORM 实战:连接 MySQL 与 CRUD 操作》
  • 企业级RAG与Agent技术实战:构建智能自动化解决方案
  • TAS3108EVM2评估板:8通道数字音频处理系统开发实战指南
  • Linux文件系统核心:inode、硬链接与软链接详解
  • 今日佛山黄金回收报价,全城区域全覆盖,新旧黄金统一高价回收 - 一日一测评
  • 西安黄金回收怎么选最划算?银行、金店、回收商家优劣拆解 - 一日一测评
  • 2026三亚市黄金回收价格行情分析:最新金价走势与卖金时机_转自TXT - 余情未了888
  • AI电影解说:从工具链搭建到百万流量实战
  • LVDS SerDes PCB设计实战:从阻抗连续到信号完整性的高速链路构建
  • 【2027最新】基于SpringBoot+Vue的养老保险管理系统管理系统源码+MyBatis+MySQL
  • 2026衡阳市祁东县黄金回收价格行情分析:最新金价走势与卖金时机_转自TXT - 余情未了888
  • 2026常州高新区精密钢管厂家推荐,不锈钢管厂家哪家好?避坑指南:4个坑+5条硬标准,帮你绕开90%采购陷阱 - mobible
  • 《黄帝内经》017章│三元气机 顺养本源
  • 从几公斤到数吨级:高校/科研院所微量精油定制的柔性放大技术
  • Cocos Creator 3D入门指南:从零构建3D游戏与交互应用
  • 2026汕头市南澳县黄金回收价格行情分析:最新金价走势与卖金时机_转自TXT - 余情未了888
  • 北大团队首创电影脚本式AI视频理解系统解析
  • 2026呼和浩特市黄金回收价格行情分析:最新金价走势与卖金时机_转自TXT - 余情未了888
  • 智能仓储中的动态三维重构与行为认知技术
  • 收藏备用:绍兴赛事保障非急救救护车出租,跨省返乡安全护送全攻略 - 热点速览
  • 漫步者Comfo Clip耳夹式蓝牙耳机评测:骨传导+气传导技术解析
  • 2026遂平装修避坑:欧尚装饰与本地竞品深度对比解析 - 装企自媒体训练营辉哥
  • 基于NFC与FRAM的无源柔性生物传感贴片设计与实现
  • 靠谱的五金自动喷漆设备供应商
  • Open Meditron:可审计临床大语言模型框架部署与实践指南
  • 连续图神经网络(CGNN)原理与实现详解
  • 2026 靠谱的强力磁铁厂家怎么选?采购厂商推荐指南 - 商业新知
  • AIGC平台实战测评:高效选型与避坑指南