创建临时文件
#创建临时文件,并不会写到具体文件中去
from tempfile import TemporaryFile
f=TemporaryFile('w+') #写入及读取文件
f.write('hello,world\n')
f.seek(0) #回到文件开头,如果不回到,读出来的不完整或者是空值
data = f.readlines()
print(data)
f.close()
with 形式
#创建临时文件,并不会写到具体文件中去
from tempfile import TemporaryFile
with TemporaryFile('w+') as f:
f.write('hello,world\n')
f.seek(0) #回到文件开头,按照字符串索引
data = f.readlines()
print(data)
f.close()
创建临时文件夹
程序结束后会删除
注意一下f格式的字符串格式化表达方式
#创建临时文件夹
from tempfile import TemporaryDirectory
with TemporaryDirectory() as ff:
print(f'临时文件夹已创建在:{ff}')
创建新文件夹
创建的这个文件夹不能已经存在,不然会报错
#创建文件夹
import os
os.mkdir('新文件夹')
所以一般会加判断句式
#创建文件夹
import os
if not os.path.exists('新文件夹'):
os.mkdir('新文件夹')
复制文件
#复制文件,该文件夹一定要先存在
import shutil
shutil.copy('wx.json','新文件夹s\ss.json')
shutil.copy('wx.json','新文件夹s\\')
复制文件夹
#复制文件夹
import shutil
shutil.copytree('olddir','newdir')
移动文件(夹)
#移动文件(夹)
import shutil
shutil.move('11.txt','新文件夹\\1.txt')
shutil.move('11.txt','新文件夹\\')
shutil.move('旧文件夹','新文件夹\\')
如果是移动文件夹,那么接受目录一定要加斜杠
重命名
#重命名
import os
os.rename('old.txt','new.txt')
os.rename('olddir','newdir')
删文件
#重命名
import os
os.remove('1.txt')
删文件夹
#重命名
import shutil
shutil.retree('olddir')
作业1
1.找到当前目录所有.zip文件
2.文件重命名,加上修改日期
3.创建新文件夹
4.重命名后的文件移动到新文件夹中
5.重命名的文件添加到压缩包,并按照今天的日期给压缩包命名
6.压缩包移到新建文件夹中,然后删除原始文件
创建和解压压缩包
#创建和解压压缩包
import zipfile
with zipfile.ZipFile('11.zip','r') as ff:
print(ff.namelist())
- 处理解压文件名的中文乱码
#创建和解压压缩包
import zipfile
with zipfile.ZipFile('11.zip','r') as ff:
for filename in ff.namelist():
print(filename.encode('cp437').decode('gbk'))
- 压缩包内信息
import zipfile
with zipfile.ZipFile('11.zip','r') as ff:
for filename in ff.namelist():
info =ff.getinfo(filename)
print(filename,info)
- 解压
可以默认不给路径
import zipfile
with zipfile.ZipFile('11.zip','r') as ff:
#某个文件解压
ff.extract('压缩包中的文件','路径')
ff.extract('压缩包中的文件')
#整个解压,如果有密码还可以加上密码,但是要先转码
ff.extractall(path=,pwd=b'')
- 创建压缩包
import zipfile
filelist =['1.txt','2.txt','3.xlsx']
with zipfile.ZipFile('创建压缩包.zip','w') as ff:
for file in filelist:
ff.write(file)
- 往已有压缩文件里面追加文件,参数改成‘a’即可
import zipfile
filelist =['1.txt','2.txt','3.xlsx']
with zipfile.ZipFile('创建压缩包.zip','a') as ff:
for file in filelist:
ff.write(file)
网友评论