当前位置: 首页 > 后端技术 > Python

Python—文件系统操作

时间:2023-03-26 17:18:59 Python

1.路径操作检查路径是否存在:importosifos.path.exists(r'E:\jupyter'):print('exist')加入路径:path=os.path.join('C:\\','a','b','c')#C:\a\b\c查看文件类型:path=r'C:\Users\Public\Desktop\MicrosoftEdge.lnk'ifos.path.isdir(path):print('dir')elifos.path.isfile(path):print('file')else:print('other')2.目录操作创建目录:os.makedirs(r'E:\a\b\c')#Willcreatemissingparentdirectoryos.mkdir(r'E:\a\b\c\d')#Willnotcreatemissingparentdirectory删除目录:importosimportshutilos.rmdir(r'E:\a\b\c\d')#删除空目录shutil.rmtree(r'E:\a')#递归删除目录(非空目录)readdirectory:entries=os.listdir(r'E:\jupyter')forfilenameinentries:print(filename).ipynb_checkpointsmatplotlib.ipynbnetworkxPyTorch当前工作目录:os.chdir(r'E:\\')#切换当前工作目录cur_dir=os.getcwd()#getcurrent工作目录directoryprint(cur_dir)copydirectory:#递归复制E:\jupyter到E:\a\jupyter#将创建丢失的父目录shutil.copytree(r'E:\jupyter',r'E:\a\jupyter')Traversingdirectories:#cur_path:当前路径#sub_dirs:当前路径包含的所有子目录#files:当前路径包含的所有文件forcur_path,sub_dirs,filesinos.walk(r'E:\jupyter'):print(cur_path,sub_dirs,files)E:\jupyter['.ipynb_checkpoints','networkx','PyTorch']['matplotlib.ipynb']E:\jupyter\.ipynb_checkpoints[]['matplotlib-checkpoint.ipynb','networkx-checkpoint.ipynb']E:\jupyter\networkx['.ipynb_checkpoints']['edgelist.txt','networkx.ipynb']...3.文件操作注意:目录也是文件。Rename:#将E:\tmp\a.mp4重命名为E:\tmp\A.mp4os.rename(r'E:\tmp\a.mp4',r'E:\tmp\A.mp4')删除文件:os.remove(r'E:\tmp\A.mp4')查看文件信息:stat=os.stat(r'E:\jupyter')print(stat)os.stat_result(st_mode=16895,st_ino=562949954788505,st_dev=780501735,st_nlink=1,st_uid=0,st_gid=0,st_size=0,st_atime=1630978768,st_mtime=1630832561,st_ctime=1630718956)pyfile\bshutil..mp4',r'E:\tmp\c.mp4')移动文件(或递归移动目录)#将E:\tmp\test移动到E:\b\testshutil.move(r'E:\tmp\test',r'E:\b\test')也可以通过重命名来移动文件或目录:os.rename(r'E:\b\test',r'E:\tmp\test')