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

第5篇_Python文件操作与异常处理:程序与外界交互的桥梁

第5篇_Python文件操作与异常处理程序与外界交互的桥梁前言在前四篇博客中我们已经建立了完整的 Python 编程基础第1篇搭建环境写下第一行代码理解变量与基础语法第2篇掌握 Python 的数据类型与运算符建立 “数据” 的认知第3篇掌握条件语句、循环、函数建立 “逻辑” 的认知第4篇深入面向对象编程建立 “结构” 的认知学到这里你的 Python 代码已经能在内存中自由运转了——变量、函数、类、对象全都在 RAM 里运行程序结束就消失。但真实世界的程序不能只活在内存里。它需要读取配置文件知道该连接哪个数据库密码是什么保存用户数据下次启动还能继续用而不是每次都重新输入读写日志文件出了问题好追查谁在什么时候做了什么操作导入别人写好的模块站在巨人的肩膀上不用重复造轮子这就需要掌握文件操作和异常处理——这是 Python 程序与外界交互的两座桥梁。本篇我们就来系统学习这两个主题。1、文件操作程序与磁盘的对话1.1、为什么需要文件操作让我们从一个生活场景说起。想象一下你正在开发一个学生成绩管理系统。用户输入了 50 名学生的成绩系统计算出了平均分、最高分、最低调并生成了报表。用户很满意关掉了程序。然后用户第二天再次打开程序——所有数据都不见了。50 名学生的成绩全部丢失必须重新输入一遍。这就是内存的问题程序运行期间数据存储在**内存RAM**中。内存的特点是 “易失性” —— 断电后数据全部消失程序退出后数据也被操作系统回收。那么如何让数据在程序退出后依然存在答案是把数据写入磁盘文件。磁盘文件是存储在硬盘、SSD 等持久存储设备上的数据单元。它们不会因为断电或程序退出而消失。只要你不主动删除文件可以存在几年甚至几十年。文件操作解决的就是 “数据持久化” 的问题把内存中的数据写入磁盘保存以及从磁盘读取数据到内存加载。1.2、理解文件路径文件在哪里在学习文件操作之前我们需要先理解一个基础概念文件路径。文件路径就是文件在操作系统中的 “地址”告诉操作系统去哪里找到这个文件。Windows 路径示例C:\Users\admin\Documents\hello.txtLinux/Mac 路径示例/home/user/documents/hello.txt路径分为两种绝对路径从磁盘根目录开始的完整路径如C:\Users\admin\Documents\hello.txt相对路径从当前工作目录开始的路径如hello.txt表示当前目录下名为 hello.txt 的文件在 Python 中我们可以使用os.getcwd()获取当前工作目录即程序运行所在的位置importosprint(os.getcwd())# 查看当前工作目录例如 /home/user/projects了解当前工作目录可以帮助我们正确地指定文件路径避免 “文件找不到” 的错误。1.3、第一个文件程序写入好了理论够了让我们写点实际的代码。# 第一次接触文件操作把文字写入文件# 新建一个文件向里面写入内容# 1. 打开文件# open(文件名, 模式) 是 Python 内置的文件打开函数# 第一个参数是文件名路径第二个参数是打开模式# 模式 w 表示写入模式write如果文件不存在会创建文件存在会清空内容# encodingutf-8 指定字符编码中文环境下基本都要写这个fileopen(hello.txt,w,encodingutf-8)# 2. 写入内容# write() 方法把字符串写入文件缓冲区注意它不会自动加换行符file.write(Hello, Python!\n)# \n 是 Unix/Linux/Mac 的换行符file.write(这是我的第一个文件程序\n)# 每写一行内容末尾加 \n换到下一行# 3. 关闭文件# 非常重要关闭后数据才会真正保存到磁盘# 如果不关闭就退出程序可能只有部分数据被写入数据丢失风险file.close()print(文件写入成功请查看 hello.txt 文件)运行这段代码你会看到当前目录下多了一个hello.txt文件用记事本或编辑器打开内容正是我们写入的两行文字。逐行详细解析代码含义open(hello.txt, w, encodingutf-8)以 “写入模式” 打开文件。w表示 write如果文件不存在会在当前目录自动创建一个新文件。如果文件已经存在原有内容会被全部清空这是w模式的一个重要特性。encodingutf-8确保中文能正确存储不写这个参数可能导致中文乱码。file.write(Hello, Python!\n)把字符串写入文件缓冲区。\n是换行符表示 “另起一行”。如果不加\n所有内容会连成一行。file.close()关闭文件。这是一个必须养成的好习惯。关闭时操作系统才会把缓冲区里的数据真正写入磁盘。如果忘记关闭程序异常退出时数据可能丢失。⚠️高危提醒w模式会覆盖已有文件如果你打开一个已存在的文件并用w模式写入原内容会全部消失。保险的做法是先用os.path.exists()判断文件是否存在或者使用a追加模式后面会讲到。
http://www.rkmt.cn/news/1393379.html

相关文章:

  • 怎样高效使用BilibiliDown:5个进阶技巧与实战指南
  • 如何快速实现低延迟游戏串流:Moonlight安卓版完整配置指南
  • 无线传感器网络中统计相关观测的联合PDF指数紧近似分解方法
  • ChatGPT引用到底怎么写?APA第7版、MLA第9版、Chicago 17版——3大权威格式逐行对照实操手册
  • 022、EKF在姿态估计中的应用
  • 自适应多模态学习模型ABM-BCSIM:融合新闻、情绪与技术指标预测金融市场
  • VNC连接CentOS 7桌面一片灰?手把手教你排查Xfce4启动失败的5个坑
  • ChatGPT邮件模板不是万能的——但这份经ISO 27001信息安全部门认证的模板框架例外(仅开放200份白名单)
  • ESP32-S3实时入侵检测:62KB内存实现95%召回率的轻量级AI方案
  • 花了8000块发的论文,评职称被认定为学术不端,只因这一个细节... - AI论文先行者
  • 黑群晖安装后必做的5件事:从基础设置到安全加固,让你的NAS真正好用起来
  • 免费永久激活IDM的终极解决方案:开源脚本完整指南
  • 2026景德镇本地水质检测测评;水质超标别乱测,直饮异味别忽视,水垢厚重别忽视,污水废水别乱送检,矿泉水质检别糊弄水质检测官方权威排名TOP5(2026年5月水质检测最新深度调研方案) - 防水补漏3
  • 【数据库】 数据库基础及MySQL常用指令,必背知识点整理合集
  • PUBG-Logitech压枪系统:5步掌握罗技鼠标宏的终极武器识别技术
  • 秒传链接提取脚本:告别网盘分享失效,打造永久文件分享新时代
  • 【权威实证】基于1,742篇SCI论文对比测试:ChatGPT-4o生成综述的准确率仅61.3%,但加入这4个校验层后跃升至94.7%
  • 无锡黄金回收2026实测|5家正规门店评级盘点|本地人卖金避坑攻略 - 恒顺黄金回收
  • sMRI-PatchNet:基于可解释分块与双分支网络的阿尔茨海默病影像诊断
  • 2026礼品团购公司推荐:靠谱高性价比选型与报价解析 - 速递信息
  • 避坑指南:Windows下部署EMQX 5.3.2常见报错解决(路径、端口、启动失败)
  • 揭秘顶级AI原生团队的底层工作流协议:6层权限隔离+4级语义对齐+实时反馈熔断机制
  • ChatGPT小说创作实战手册(含27个已验证过审的网文平台适配Prompt)
  • ChatGPT文献综述生成失效真相(92%研究者踩中的7个AI幻觉陷阱)
  • 告别手动摆模型:用UE5.3的PCG,5分钟搞定一片写实森林(含样条线填充与ASM进阶)
  • 从设计稿到爆款:集之互动AIGC技术如何加速服装新品验证与孵化
  • 从《我的世界》到你的项目:用Unity Random.InitState实现‘种子’驱动的可复现游戏世界
  • AI赋能出海企业全球化算力调度场景下 云服务器充值的优化路径观察
  • STM32实战:手把手教你给RoboMaster M2006电机调一个稳如老狗的PID(附完整代码)
  • 2026全国五大科研检测机构推荐:2026贵州最新排名出炉,Wela微尔来检测以全维实力领跑 - 十大品牌榜