Python系列(23)——文件读写

一、打开文件

在Python中,使用open()函数可以打开文件。该函数接受两个参数:文件名和模式。模式指定了打开文件的方式,如只读、只写、读写等。

示例:

python 复制代码
# 以只读方式打开文件
file = open('example.txt', 'r')

# 以写入方式打开文件,如果文件不存在则创建,如果文件存在则覆盖
file = open('example.txt', 'w')

# 以追加方式打开文件,如果文件不存在则创建,如果文件存在则在末尾追加内容
file = open('example.txt', 'a')

请注意,打开文件后,一定要记得在使用完毕后关闭文件,可以使用close()方法关闭文件。

二、读取文件

读取文件可以使用read()readline()readlines()等方法。

  • read()方法读取整个文件内容,并将其作为一个字符串返回。
  • readline()方法每次读取文件的一行内容。
  • readlines()方法读取整个文件内容,并将其作为一个字符串列表返回,每个元素代表文件中的一行。

示例:

python 复制代码
# 打开文件
file = open('example.txt', 'r')

# 读取整个文件内容
content = file.read()
print(content)

# 读取文件的第一行
first_line = file.readline()
print(first_line)

# 读取文件的所有行
lines = file.readlines()
for line in lines:
    print(line, end='')  # end='' 用于避免打印额外的换行符

# 关闭文件
file.close()

三、写入文件

写入文件可以使用write()方法。该方法接受一个字符串参数,并将其写入到文件中。

示例:

python 复制代码
# 以写入模式打开文件
file = open('example.txt', 'w')

# 写入内容到文件
file.write('Hello, World!\n')
file.write('This is a test file.\n')

# 关闭文件
file.close()

四、文件指针操作

文件对象内部有一个指针,指向当前读取或写入的位置。可以使用seek()方法移动指针位置,tell()方法获取当前指针位置。

示例:

python 复制代码
# 打开文件
file = open('example.txt', 'r')

# 读取文件的前10个字符
content = file.read(10)
print(content)

# 移动文件指针到文件开头
file.seek(0)

# 再次读取文件的全部内容
content = file.read()
print(content)

# 获取当前文件指针的位置
position = file.tell()
print(position)

# 关闭文件
file.close()

五、文件其他操作

除了上述基本操作外,Python还提供了其他文件操作方法,如检查文件是否存在、重命名文件、删除文件等。

示例:

python 复制代码
# 检查文件是否存在
import os
if os.path.exists('example.txt'):
    print('File exists.')
else:
    print('File does not exist.')

# 重命名文件
os.rename('example.txt', 'new_example.txt')

# 删除文件
os.remove('new_example.txt')

总结:Python提供了丰富的文件操作方法,使得开发者能够轻松处理文件。在实际开发中,根据需求选择合适的方法,并注意文件打开和关闭的管理,以避免资源泄露和错误发生。通过熟练掌握这些文件操作方法,我们可以更加高效地处理文件数据,实现各种文件相关的功能。

相关推荐
冉冰学姐8 分钟前
SSM学生竞赛模拟系统4x1nt(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·用户管理·ssm 框架·学生竞赛模拟系统
AKA__老方丈9 分钟前
vue-cropper图片裁剪、旋转、缩放、实时预览
前端·vue.js
zqmattack12 分钟前
SQL优化与索引策略实战指南
java·数据库·sql
lang201509281 小时前
Jackson 1.x到2.x的演进与Spring集成
数据库·sql·spring
我星期八休息1 小时前
MySQL数据可视化实战指南
数据库·人工智能·mysql·算法·信息可视化
UR的出不克1 小时前
使用 Python 爬取 Bilibili 弹幕数据并导出 Excel
java·python·excel
Arms2061 小时前
python时区库学习
开发语言·python·学习
梦6501 小时前
Vue 单页面应用 (SPA) 与 多页面应用 (MPA) 对比
前端·javascript·vue.js
清铎1 小时前
大模型训练_week3_day15_Llama概念_《穷途末路》
前端·javascript·人工智能·深度学习·自然语言处理·easyui
与光同尘 大道至简1 小时前
ESP32 小智 AI 机器人入门教程从原理到实现(自己云端部署)
人工智能·python·单片机·机器人·github·人机交互·visual studio