Python文件读写基础:从open到with语句的完整指南
本文详细介绍Python中文件处理的核心方法,涵盖使用open函数进行读写、手动调用close关闭文件的重要性,以及推荐使用with语句自动管理资源。通过具体代码示例演示全量读取与按行读取(readline)的区别,帮助初学者掌握安全、高效的文件操作技巧。
掌握文件的读写操作是编程学习的基础第一步。
回想早期的编程课程,例如学生管理系统的设计作业,往往需要借助文件来存储数据。
虽然现代开发中数据库更为常见,但在C语言等入门课程中,由于学生可能尚未接触数据库,文件处理成为首选的数据持久化方案。
在Python中,最核心的文件操作函数是open和write,具体用法如下所示。
#open函数:接收一个文件名,还有其他参数可省略不写。
one_file = open('myfile.txt')
#读取数据赋值给data变量
data = one_file.read()
#一个文件对象的write函数
one_file = open('myfile.txt','w')
#write函数:传入数据,write函数把数据写入到one_file对应的文件中。
one_file.write('写到文件的数据')
接下来通过几个实际示例来演示文件操作的具体流程。
首先演示如何读取文件中的数据。
将以下示例数据保存为文件:sample.txt
持续学习
持续开发
我雷学委
afile = open("sample.txt")
print(afile.read())

下面展示简单的数据写入过程。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/11/12 11:58 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : filedemo.py
# @Project : hello
afile = open("sample.txt")
data = afile.read()
print("sample file content=", data)
afile.close()
#把sample读取的数据写到test文件
afile = open("./test.txt", "w")
afile.write(data)
afile.close()
print("write data to test file!")
afile = open("./test.txt")
data = afile.read()
afile.close()
print("test file content=", data)
通过读取验证,确认写入文件的内容与预期一致。
从基础层面看,这种文件操作逻辑非常直观。

尽管读写流程简单,但在完成文件操作后,务必调用close函数以关闭文件,否则后续再次进行读写操作时可能会引发异常或错误。
调用close函数的标准方式如下所示。
one_file.close() #文件对象.close()
然而,在实际开发中,我们通常采用更规范的写法来确保资源安全释放。
with open('sample.txt', 'r') as one_file:
data = one_file.read()
#无须调用close了,这个with代码块内,python会帮我们自动关闭文件。
上述示例均是一次性读取整个文件,而在Python中,还支持逐行读取文件内容。
下面介绍按行读取文件的方法。
基于前文的读写代码进行改造,具体实现如下。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/11/12 11:58 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : filedemo2.py
# @Project : hello
with open("sample.txt") as afile:
data = afile.readline()
print("sample file content=", data)
with open("./test.txt", "w") as afile:
afile.write(data)
print("write data to test file!")
with open("test.txt") as afile:
data = afile.readline()
print("test file content=", data)
可以看到,这里仅读取了sample文件的第一行内容,并将其写入到test文件中,最终test文件中也仅包含这一行数据。

本节内容总结。
Python的文件读取功能十分便捷,内置的open函数结合文件对象自带的write方法,设计简洁且易于上手。
本文到此结束,希望能为读者带来帮助,也欢迎继续关注本站发布的更多技术内容!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













