OS模块的对文件操作
os新建和删除
import os
import shutil
mknod
#创建文件
#实现在Linux系统可以 windows系统不可以
os.mknod("1.txt") #
remove
#删除文件
os.remove("集合2.png")
mkdir
#创建目录
os.mkdir("ceshi111")
rmdir
# 删除目录
os.rmdir("ceshi111")
rename
# 修改当前文件的默认路径
os.rename("2.txt","3.txt")
makerdirs
# 递归创建文件夹
os.makedirs("a/b/c/d/e/f")
removedirs
# 递归删除文件夹(空文件夹) 必须是空文件夹
os.removedirs("a/b/c/d/e/f")
sep
# 获取路径的分割符 linux mac -> / windows -> \
print(os.sep)
linesep
# 获取系统的换行符号
print(os.linesep)
print(repr(os.linesep)) # 原型打印一下
shutil模块的对文件操作
copyfileobj
#copyfileobj(fsrc, fdst[, length=16*1024])
"""
复制文件 (length的单位是字符(表达一次读多少字符/字节))
16*1024 字节(16 KB)
"""
fp_src = open("3.txt",mode="r",encoding="utf-8")
fp_dst = open("4.txt",mode="w",encoding="utf-8")
shutil.copyfileobj(fp_src,fp_dst)
copyfile
#copyfile(src,dst)
#单纯的仅复制文件内容 , 底层调用了 copyfileobj
shutil.copyfile("4.txt","5.txt")
copymode
#copymode(src,dst)
#单纯的仅复制文件权限 , 不包括内容 (虚拟机共享目录都是默认777)
"""注意: 要先有两个文件才可以,不会默认创建"""
shutil.copymode("4.txt","5.txt")
copystat
#copystat(src,dst)
#复制所有状态信息,包括权限,组,用户,修改时间等,不包括内容
shutil.copystat("4.txt","5.txt")
copy
#复制文件权限和内容
shutil.copy("5.txt","6.py")
copy2
#复制文件权限和内容,还包括权限,组,用户,时间等
shutil.copy2("5.txt","7.py")
copytree
#拷贝文件夹里所有内容(递归拷贝)
#参数2不需要提前建立
#比os模块有优势
shutil.copytree("lianxi","lianxi2")
rmtree
#删除当前文件夹及其中所有内容(递归删除)
shutil.rmtree("lianxi2")
move
#移动文件或者文件夹
shutil.move("7.py","lianxi/888.php") #边复制边改名
shutil.move("7.py","/888.php")
标签:文件,shutil,OS,文件夹,模块,txt,os
From: https://www.cnblogs.com/wbcde116/p/18055545