Python文件操作详解:读写、二进制处理与OS模块应用

纸上星河
纸上星河
发布时间:2026-10-12| 3人浏览过
原创

本文详细介绍Python中文件的具体操作方法,涵盖文本文件的读写(write/read/readlines/readline)、追加模式及二进制文件的处理。同时讲解如何使用os模块进行文件重命名、删除、创建文件夹及获取当前目录,帮助开发者掌握完整的文件管理技能。

文件的基本概念介绍

文件是什么?具体展示如图:

使用文件的主要目的:

将数据保存至磁盘存储,使得程序在下一次执行时可以直接调用已有数据,无需重新生成,从而节省时间与精力。

文件的打开与关闭操作

1. 打开文件

在Python中,使用open函数可以打开已存在的文件或创建一个新文件。其格式为:open(文件名,访问模式)。

f = open(‘文件', 'w')或者f = open('文件', 'r')

如下图所示,展示了不同的文件打开方式。

常见的文件操作包括:写入、读取和追加。

2. 写入数据(write)

格式如下:

对象 = open("文件",w)
对象.write("写入数据")
对象.close()

实例:以写入方式打开文件并写入数据。

f=open('666.txt','w')
f.write('66666666')
f.close()

继续写入更多数据。

f=open('666.txt','w')
f.write('111111')
f.close()

若文件不存在则创建,若存在则先清空内容再写入新数据。

3. 读取数据(read)

格式如下:

对象 = open("文件",r)
变量 = 对象.read()
print(变量)
对象.close()

实例:以读取方式打开文件并读取数据。

f=open('666.txt','r')
a=f.read()
print(a)
f.close()

在读取数据时,模式参数'r'可以省略不写,例如:

f=open('666.txt')
a=f.read()
print(a)
f.close()

如果使用open打开文件时指定了"r",则可以省略该参数,仅写open('test.txt')。若文件不存在,打开时会报错;只有文件存在时才能操作。如果文件中包含中文显示,可能会出现乱码,此时需要添加encoding='utf-8'参数,即open('test.txt', 'r', encoding='utf-8')。

读取指定长度的数据(单位为字节)。

f=open('666.txt','r')
a=f.read(5) # 读取5个数据
print(a)
f.close()

使用read(num)可以从文件中读取数据,num表示要从文件中读取的数据长度(单位为字节)。如果没有传入num,则表示读取文件中的所有数据。

4. 读取数据(readlines)

readlines的功能类似于不带参数的read,它可以按照行的方式一次性读取整个文件的内容,并返回一个列表,其中每一行的数据作为一个元素。

格式如下:

对象 = open("文件",r)
变量 = 对象.readlines()
print(变量)
对象.close()

实例:

f=open('666.txt','r')
a=f.readlines()
print(a)
print(type(a))

5. 读取数据(readline)

readline可以按照行的方式,逐行读取文件中的内容。

格式如下:

对象 = open("文件",r)
变量 = 对象.readline()
print(变量)
对象.close()

实例:

f=open('666.txt','r')
a=f.readline()
print('1:%s'%a)
a=f.readline()
print('2:%s'%a)
a=f.readline()
print('3:%s'%a)
f.close()

6. 可写与追加模式(a)

格式如下:

对象 = open("",a)
对象.write("写入数据")
对象.close

实例:在文件中写入数据。

f=open('666.txt','a')
f.write('999999')
f.close()

以追加(可写)形式打开文件,如果文件不存在则创建并从头添加写入的内容;如果文件存在,则在原有数据后追加新数据。

二进制文件的读写操作

1. 读取数据(rb)

格式1:

对象 = open("二进制文件",rb)
变量= 对象.read()
print(变量)
对象.close()

格式2:

with open("二进制文件","rb") as 对象:
    变量 = 对象.read()
    print(变量)

实例1:

f=open('91.jpg','rb')
a=f.read()
print(a)
f.close()

实例2:

with open('91.jpg','rb') as f:
    res=f.read()
    print(res)

2. 写入数据(wb)

格式如下:

with open("二进制文件","wb") as 对象:
    变量 = 对象.write()
    print(变量)

实例:备份图片文件。

with open('91.jpg','rb') as f:
    res=f.read()
    with open('66.jpg','wb') as f:
        res=f.write(res)
    print(res)

关闭文件

格式如下:

close()

3. 文件和文件夹的相关操作

文件的相关操作介绍

有时需要对文件进行重命名、删除等操作,Python的os模块提供了这些功能。

3.1 文件的重命名

os模块中的rename()函数可以完成对文件的重命名操作。

格式如下:

import os
os.rename("需要修改的文件名","新文件名")

实例:

import os
os.rename('66.jpg','6666.jpg')

3.2 删除文件

os模块中的remove()函数可以完成对文件的删除操作。

格式如下:

import os
os.remove("文件名")

实例:

import os
os.remove('6666.jpg')

文件夹的相关操作

1. 创建文件夹

os模块中的mkdir()函数可以完成对文件夹的创建操作。

格式如下:

import os
os.mkdir('文件夹名')

实例:

import os
os.mkdir('lisi')

2. 获取当前目录

os模块中的getcwd()函数可以获取当前工作目录。

实例:

import os
os.getcwd()
print(os.getcwd())

至此,关于Python中文件的具体操作与介绍已完成。更多相关Python文件操作内容,请搜索本站以前的文章或继续浏览下面的相关文章。希望大家以后多多支持本站!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。