shutil:高级的 文件、文件夹、压缩包 处理模块
1.shutil.copyfileobj(fsrc, fdst[, length])(copyfileobj方法只会拷贝文件内容)
将文件内容拷贝到另一个文件中
import shutil
os.listdir()
Out[103]:
['.ipynb_checkpoints',
'20190410_new',
'20190416',
'20190417',
'dir1',
'file1.txt',
'Untitled.ipynb',
'untitled0.py']
shutil.copyfileobj(open("file1.txt","r"),open("file2.txt","w"))
os.listdir()
Out[105]:
['.ipynb_checkpoints',
'20190410_new',
'20190416',
'20190417',
'dir1',
'file1.txt',
'file2.txt',
'Untitled.ipynb',
'untitled0.py']
2.shutil.copyfile(src, dst) (copyfile只拷贝文件内容)
拷贝文件
shutil.copyfile("file1.txt","file3.txt")
Out[106]: 'file3.txt'
os.listdir()
Out[107]:
['.ipynb_checkpoints',
'20190410_new',
'20190416',
'20190417',
'dir1',
'file1.txt',
'file2.txt',
'file3.txt',
'Untitled.ipynb',
'untitled0.py']
3.shutil.copy(src, dst) 拷贝文件和权限
shutil.copy("file1.txt","file4.txt")
Out[108]: 'file4.txt'
4.shutil.copy2(src, dst)
拷贝文件和状态信息
5.shutil.move(src, dst)
递归的去移动文件,它类似mv命令,其实就是重命名
shutil.move("file3.txt","file5.txt")
Out[109]: 'file5.txt'
os.listdir()
Out[110]:
['.ipynb_checkpoints',
'20190410_new',
'20190416',
'20190417',
'dir1',
'file1.txt',
'file2.txt',
'file4.txt',
'file5.txt',
'Untitled.ipynb',
'untitled0.py']