Python编程基础(六):文件操作与异常处理
前言
亲爱的读者朋友们,大家好!👋
欢迎回到一如老师的公众号,今天是我们的第二十三天更新。在前面的学习中,我们了解了Python的基础语法、数据结构以及函数和模块的使用。本期,我们将深入探讨Python中的文件操作与异常处理。文件操作是程序与外部数据交互的重要手段,而异常处理可以提高程序的健壮性,避免因错误导致程序崩溃。
无论你是编程新手,还是希望提升技能的开发者,今天的内容都会对你有所帮助。准备好了吗?让我们一起开启Python的学习之旅吧!🐍🚀
一、文件操作
1. 文件的打开与关闭
打开文件
使用open()
函数打开文件,返回一个文件对象。
file = open('example.txt', 'r') # 以读模式打开文件
'r'
:读模式(默认)'w'
:写模式,覆盖原内容'a'
:追加模式,在文件末尾追加内容
关闭文件
使用close()
方法关闭文件。
file.close()
2. 文件的读写操作
读取文件内容
read()
方法:读取整个文件with open('example.txt', 'r') as file:
content = file.read()
print(content)readline()
方法:按行读取with open('example.txt', 'r') as file:
line = file.readline()
while line:
print(line.strip())
line = file.readline()readlines()
方法:读取所有行,返回列表with open('example.txt', 'r') as file:
lines = file.readlines()
for line in lines:
print(line.strip())
写入文件内容
write()
方法:写入字符串with open('example.txt', 'w') as file:
file.write('Hello, Python!')writelines()
方法:写入序列lines = ['第一行\n', '第二行\n', '第三行\n']
with open('example.txt', 'w') as file:
file.writelines(lines)
3. 使用 with
语句管理文件
with
语句可以自动管理文件的打开和关闭。
with open('example.txt', 'r') as file:
content = file.read()
print(content)
# 文件在退出with块后自动关闭
二、异常处理
1. 什么是异常?
异常是指程序运行过程中发生的错误,如除零错误、文件未找到等。如果异常未被处理,程序将会崩溃。
2. 异常的捕获与处理
使用 try-except
语句捕获和处理异常。
基本语法
try:
# 可能发生异常的代码
pass
except 异常类型:
# 处理异常的代码
pass
示例代码
try:
num = int(input("请输入一个整数:"))
result = 100 / num
print(f"结果是:{result}")
except ZeroDivisionError:
print("错误:除数不能为零!")
except ValueError:
print("错误:请输入整数!")
3. else
和 finally
子句
else
子句:当没有发生异常时执行try:
# 可能发生异常的代码
pass
except 异常类型:
# 处理异常的代码
pass
else:
# 未发生异常时执行的代码
passfinally
子句:无论是否发生异常都会执行try:
# 可能发生异常的代码
pass
except 异常类型:
# 处理异常的代码
pass
finally:
# 总是执行的代码
pass
4. 自定义异常
可以通过继承 Exception
类来创建自定义异常。
class CustomError(Exception):
pass
def func():
raise CustomError("这是一个自定义错误")
try:
func()
except CustomError as e:
print(e)
三、实践案例
1. 读取并统计文件中的单词数量
示例代码
def count_words_in_file(filename):
try:
with open(filename, 'r') as file:
content = file.read()
words = content.split()
print(f"文件 {filename} 中包含 {len(words)} 个单词。")
except FileNotFoundError:
print(f"错误:文件 {filename} 未找到。")
filename = input("请输入文件名:")
count_words_in_file(filename)
2. 记录用户输入的内容到文件
示例代码
def write_user_input(filename):
try:
with open(filename, 'a') as file:
while True:
user_input = input("请输入内容(输入 'quit' 退出):")
if user_input.lower() == 'quit':
break
file.write(user_input + '\n')
except Exception as e:
print(f"发生错误:{e}")
filename = 'user_input.txt'
write_user_input(filename)
四、小结
通过本节的学习,我们了解了如何进行文件的读写操作,以及如何使用异常处理来捕获和处理程序中的错误。文件操作使程序可以与外部数据交互,而异常处理可以提高程序的健壮性,提供更好的用户体验。
五、实践与思考
实践:
用户注册程序
编写一个用户注册程序,将用户名和密码保存到文件中,要求:
用户名不能重复,如果已存在则提示用户重新输入。 密码长度不少于6位。 计算文件中数字的总和
给定一个包含数字的文件,每行一个数字,编写程序读取文件并计算这些数字的总和,需处理文件不存在或内容格式错误的情况。
思考:
异常处理的最佳实践
如何合理地使用异常处理,避免过度捕获或遗漏异常?
文件操作的安全性
在进行文件操作时,如何确保数据的安全性和完整性,例如防止数据丢失或文件损坏?
六、加入我们的知识星球!
想要获取更多的学习资源和指导吗?加入我们的 「一如老师的编程与设计星球」,你将获得:
独家学习资料:丰富的教程、源码、笔记等资源。 答疑解惑:一对一的学习问题解答,助你突破难点。 项目实战:参与真实项目,提升实战能力,积累经验。 职业指导:提供就业、面试等方面的建议,助你迈向理想职业。
扫码立即加入,和更多志同道合的伙伴一起成长!

七、加入我们的学习群!
为了更好地交流和学习,欢迎大家加入 「一如老师编程设计交流中心」,与更多的朋友一起进步!
QQ群号:965696190 微信群:扫描下方二维码加入

八、期待你的反馈!
如果你在学习过程中有任何疑问,或者有好的建议和想法,欢迎在下方留言。我会尽快回复你的疑问。

九、下期预告
下一期,我们将学习Python编程基础(七):面向对象编程。我们将探讨如何使用类和对象来组织和封装代码,实现更高级的编程技巧。敬请期待!
版权声明
本文为原创内容,转载请注明出处。
喜欢这篇文章吗?
如果觉得本篇内容对你有帮助,请点击右下角的“赞”和“在看”,并分享给更多的朋友!你的支持是我持续创作的动力!❤️





