一、文件操作
在计算机中,文件是存储在磁盘上的数据集合。文件可以包含各种类型的数据,如文本、图像、音频、视频或程序代码。
文件系统通过文件名和文件路径来定位和管理文件。文件名通常包含文件的名称和扩展名,扩展名用于表示文件的类型(例如 .txt 表示文本文件,.jpg 表示图像文件)。文件路径可以是绝对路径(从文件系统的根目录开始)或相对路径(相对于当前工作目录)。
在编写程序的时候,数据是以二进制的形式存储在内存的,将数据写到磁盘文件的过程称之为持久化。
文件操作的作用就是把一些内容(数据)存储存放起来,可以让程序下一次执行的时候直接使用。
文件操作步骤:打开文件,读写文件,关闭文件。
写入数据:
# 向文件中写入数据
# 打开文件(建立程序和文件之间的通道)
f = open("test.txt","w")# 向文件中写入数据
f.write("hello world\n")
f.write("nihao python\n")# 关闭和文件之间的建立的通道
f.close()
print("写入数据结束")
读取文件:
读取文件信息:
read(num) 一次读取num个字节的数据, 不写就一次性读取所有的数据.
readline() 一次读取一行.
readlines() 一次性读取读完所有行, 且会把每行数据封装到 1个列表中.
'''读取文件信息:read(num) 一次读取num个字节的数据, 不写就一次性读取所有的数据.readline() 一次读取一行.readlines() 一次性读取读完所有行, 且会把每行数据封装到 1个列表中.
'''# 从文件中读取数据
# 打开文件(建立程序和文件之间的通道)
f = open("test.txt","r")
# 从文件中读取数据 read() 默认读取所有数据
# print(f.read())
# 从文件中读取指定的字节大小数据
print(f.read(5))
print(f.read(8))# read(num) 一次读取num个字节的数据, 不写就一次性读取所有的数据.
# print(f.read()) # 一次性读取所有的数据.
# print(f.read(3)) # 一次读取3个字节, 包括: \n 也占1个字节
# print(f.read(5)) # 一次读取5个字节, 包括: \n 也占1个字节# 读取一行数据
# print(f.readline())
# print(f.readline())# 读取所有行
# print(f.readlines())# 关闭和文件之间的建立的通道
f.close()
运行如下:

读取中文文件:
# 1. 打开文件.
# f = open('./data/a.txt', 'r') # r是字符形式读, 没写码表, 默认是按照: gbk 读.
# f = open('./data/a.txt', 'r', encoding='gbk') # 效果同上
f = open('./data/a.txt', 'r', encoding='utf-8') # 按照 utf-8 码表解析# 以二进制形式来读
# f = open('./data/a.txt', 'rb')# 2. 读取文件内容.
print(f.read())# 3. 关闭文件.
f.close()
拷贝文件:
def file_copy(source_file_path,dest_file_path):# 打开源文件source_file = open(source_file_path,"rb")# 打开目标文件dest_file = open(dest_file_path,"wb")# 从源文件中读取数据content = source_file.read(1024)# 将内容写到目标文件while content:dest_file.write(content)content = source_file.read(1024)#关闭源文件source_file.close()#关闭目标文件dest_file.close()file_copy("d:\\hua.png","E:\\hua.png")
常用标注库
标准库指的是在安装Python时就一同被安装的库。这些库经过精心挑选和开发,旨在为Python开发者提供通用且强大的工具集,涵盖各种不同的应用领域。
Python标准库:https://docs.python.org/3.14/library/index.html
os 多种操作系统接口。
sys 系统相关的形参和函数。
time 时间的访问和转换。
datetime 提供了用于操作日期和时间的类。
math 数学函数。
random
re
json
collections
functools
hashlib
urllib
smtplib
zlib
gzip
bz2
multiprocessing
threading
copy
socket
shutil
glob
二、os 模块介绍
os 模块介绍:
全称叫: Operating System, 系统模块, 主要是操作 文件夹, 文件, 路径等的.
属于第3方的包, 所以我们使用的时候需要导包。
常用函数:
getcwd() 获取当前的工作空间目录(即: 你写相对路径时, 参考的路径). current work directory: 当前工作目录。
chdir() 改变工作空间路径. change directory。
rmdir() 删除文件夹, 必须是空文件夹. remove directory。
mkdir() 制作文件夹. make directory。
rename() 改名, 文件名 或者 文件夹名均可。
listdir() 获取指定目录下 所有的子级文件或者文件夹(注意: 不包括子级的子级)。
查看目录下的子目录以及文件:
import os# print(os.getcwd())for root, dirs, files in os.walk(os.getcwd()):print("当前路径:", root)print("目录:", dirs)print("文件:", files)print()
获取当前工作目录、获取指定目录下文件或者文件夹:
# 导包
import os
# os 模块的函数
# getcwd() 获取当前的工作空间目录(即: 你写相对路径时, 参考的路径). current work directory: 当前工作目录
print(os.getcwd())
# listdir() 获取指定目录下 所有的子级文件或者文件夹(注意: 不包括子级的子级)
# file_list = os.listdir('./')
file_list = os.listdir('d:/')
print(file_list)
Python3.14.3文档:https://docs.python.org/3.14/index.html
