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

第6天:文件操作和异常处理

学习目标

  • 掌握如何在Python中进行文件读写操作
  • 理解文件的打开模式
  • 学习如何处理文件中的数据
  • 理解异常处理的基本概念
  • 掌握使用tryexceptelsefinally进行异常处理
学习内容
1. 文件操作

在Python中,文件操作包括打开文件、读写文件内容和关闭文件。

文件的打开模式
  • 'r':只读模式(默认)
  • 'w':写入模式(会覆盖文件内容)
  • 'a':追加模式(将内容写入文件末尾)
  • 'b':二进制模式
  • 't':文本模式(默认)
  • '+':读写模式
打开文件
file = open('example.txt', 'r')  # 以只读模式打开文件
读取文件
  • 读取整个文件内容:

content = file.read()
print(content)
  • 逐行读取文件内容:

for line in file:print(line, end='')
  • 读取文件的特定行:

line = file.readline()
print(line)
  • 读取所有行并返回列表:

lines = file.readlines()
print(lines)
写入文件
  • 写入字符串:

file = open('example.txt', 'w')
file.write('Hello, world!')
  • 写入多行:

lines = ['First line\n', 'Second line\n', 'Third line\n']
file.writelines(lines)
      关闭文件
file.close()
使用with语句进行文件操作
with open('example.txt', 'r') as file:content = file.read()print(content)
2. 异常处理
try:# 可能引发异常的代码pass
except SomeException:# 处理异常的代码pass
else:# 如果没有异常,执行的代码pass
finally:# 无论是否有异常,都会执行的代码pass
常见异常类型
  • Exception:所有异常的基类
  • IOError:输入/输出操作失败
  • ValueError:传入无效参数
  • IndexError:索引超出序列范围
  • KeyError:请求不存在的字典键
示例
  • 捕获特定异常:

try:result = 10 / 0
except ZeroDivisionError:print("除数不能为零")
  • 捕获所有异常:

try:result = 10 / 0
except Exception as e:print("发生异常:", e)
  • 使用elsefinally

try:result = 10 / 2
except ZeroDivisionError:print("除数不能为零")
else:print("结果是:", result)
finally:print("无论是否发生异常,都会执行这段代码")
今日任务
  1. 文件操作:

    • 创建一个新文件,并写入一些文本内容。
    • 读取文件内容并打印出来。
    • 追加一些内容到文件末尾。
  2. 异常处理:

    • 编写代码模拟除零异常,并捕获异常进行处理。
    • 编写代码捕获并处理文件操作中的常见异常(如文件不存在)。
  3. 编写并运行以下示例代码:

# 文件写入示例
with open('example.txt', 'w') as file:file.write('Hello, world!\n')file.writelines(['First line\n', 'Second line\n', 'Third line\n'])# 文件读取示例
with open('example.txt', 'r') as file:content = file.read()print("文件内容:\n", content)# 追加内容到文件末尾
with open('example.txt', 'a') as file:file.write('This is an appended line.\n')# 读取文件并逐行打印
with open('example.txt', 'r') as file:for line in file:print(line, end='')# 异常处理示例
try:result = 10 / 0
except ZeroDivisionError:print("除数不能为零")
else:print("结果是:", result)
finally:print("无论是否发生异常,都会执行这段代码")# 捕获文件操作中的异常
try:with open('nonexistent.txt', 'r') as file:content = file.read()
except FileNotFoundError:print("文件不存在")
 

http://www.lryc.cn/news/388362.html

相关文章:

  • 关于freesql 频繁报“【主库】状态不可用,等待后台检查程序恢复方可使用”异常的解决。
  • Spring Boot中如何使用Flyway进行数据库版本控制
  • 心理学|人格心理学——人格心理学单科作业(中科院)
  • 第三方服务提供商的五大风险
  • 海康视频播放,包含h5和web插件
  • 数据库-python SQLite3
  • FFMpeg rtmp 推送本地yuv文件
  • websocket使用,spring boot + vite + vue3
  • 基础位运算
  • 性价比高真无线蓝牙耳机有哪些?性价比真无线蓝牙耳机推荐
  • Big Data Tools插件
  • 两个li标签之间有空格这是什么原因
  • 使用Colly库进行高效的网络爬虫开发
  • 【C#】制作图集
  • 行列视报表系统制作的报表与厂级监控信息系统(SIS)系统中的报表有什么区别?
  • 算法08 广/宽度优先搜索及相关问题详解
  • PyTorch 版本与 CUDA 版本的兼容性示例
  • Selenium进行Web自动化滚动
  • 机器学习模型训练过程和预测过程 用孩子来生动的比喻 --九五小庞
  • 【爱上C++】详解string类2:模拟实现、深浅拷贝
  • 狄克斯特拉算法
  • 2024推荐整理几个磁力导航网站可提供海量资源的
  • 链式访问:C语言中的函数调用技巧
  • 数据库设计(实战项目)-1个手机号多用户身份
  • vue+fineReport 使用前端搜索+报表显示数据
  • 高阶面试-存储系统的设计
  • 柔性测斜仪:土木工程与地质监测的得力助手
  • 数字资产和数据资产你真的了解吗?
  • 【每日一练】python运算符
  • CesiumJS【Basic】- #032 绘制虚线(Primitive方式)