第九章 文件与文件夹操作

第九章 文件与文件夹操作

一、文件的概念与分类

1、文本文件:

.log,txt,word,可以用记事本打开的文件

2、二进制文件:

数据库文件,图像文件,office文档等 ,不能用记事本打开的文件。需用特定软件进行增删改查。

二、文件操作基本知识

1、open()函数

open(file,mode='r',buffering=-1,encoding=None,errors=None,newline=None,closefd=True,opener=Node)

文件打开模式

模式 说明
r 读模式,默认
w 写模式,文件存在,清空原来内容;文件不存在,创建新文件
x 写模式,创建新文件,文件存在抛异常
a 追加模式,不覆盖原来内容
b 二进制模式(与r,w,x,a组合使用),使用时不指定encoding参数
t 文本模式,默认可省
+ 读,写模式

2、文件对象常用方法:

使用open()打开返回一个文件对象,通过该文件可以对文件进行读写操作。入选

方法 功能说明
close() 把缓冲区的内容写入文件,同时关闭文件,释放文件对象
read([size]) 文本文件读取范围size个文本,二进制文件读取返回size个字节,缺省返回所有内容
readline() 读取并返回一行内容
readlines() 返回包含文本文件中每行内容的列表
write(s) 把s写进内容
writelines(s) 把列表s的所有内容写入文本文件

3、上下文管理语句with

保证文件正常打开关闭

with open(filename,mode,encoding) as fp:

	#文件读写操作
s='regjhrjeg 是乱码吗'
with open('sample.txt','w',encoding='utf8') as fp
	fp.write(s)
with open('sample.txt',encoding='utf8') as fp
	print(fp.read())    

三、JSON文件操作

json轻量级的数据交换格式,相关方法如下:

方法 功能说明
dumps() 把对象序列化为字符串
loads() 把json格式的字符串还原为Python对象
dump() 把数据序列化并直接写入文件
load() 读取json格式文件并直接还原为Python对象

四、CSV文件操作

import csv
fn='data.csv'
#newline=''不插入空行
with open(fn,'w',newline='') as fp:
	wr=csv.writer(fp)
	wr.writerow('日期','销售额')

五、经典文件标准库

1.os模块

函数 说明
chdir(path) 把path设置当前工作文件夹
getcwd() 返回当前工资目录
listdir(path) 返回path路径下文件和子文件夹列表
mkdir(path) 创建文件夹,存在时报错
rmdir(path) 删除指定文件夹,要求改文件夹不能有文件或者子文件夹
remove(path) 删除指定文件
rename(src,dsc) 重命名
startfile(filepath[,operation]) 使用关联的应用程序打开指定文件或者启动指定应用程序

2、os.path模块

方法 说明
abspath(path) 返回绝对路径
basename(path)
dirname(p) 返回给定路径的文件夹部分
exists(path) 判断是否存在
getatime(filename) 返回文件最后一次访问时间
getctime(filename) 返回文件创建时间
getmtime(filename) 返回文件最后一次修改时间
getsize(filename) 返回文件大小
isdir(path) 是否为文件夹
isfile(path) 是否为文件
join(path,*paths) 连接多个path
split(path) 以\分隔路径,并返回元组
splitext(path) 分割文件扩展名,返回元组
splitdrive(path) 分隔驱动器名称,返回元组

3、shutil模块

方法 说明
copy(src,dst)
copyfile(src,dst)
copytree(src,dst)
disk_usage(path) 查看磁盘情况
move(src,dst)
rntree(path) 递归删除文件夹
make_archive(base_name,format,) 创建tar或者zip文件
unpack_archive() 解压缩
posted @ 2024-03-01 15:38  &*p櫎掀升  阅读(14)  评论(0编辑  收藏  举报