python刪除文件或者目錄


import  os

#os.walk遍歷目錄后,刪除文件和目錄
def rmDirAndFile(path):
#先把各個目錄的文件刪除完
for root, dirs, files in os.walk(path):
for file in files:
filepath = os.path.join(root, file)
try:
os.remove(filepath)
print("刪除文件%s成功" % file)
except:
print("刪除文件%s異常" % file)
#再去刪除空目錄
for root, dirs, files in os.walk(path):
for dir in dirs:
dirpath = os.path.join(root,dir)
try:
os.rmdir(dirpath)
print("刪除文件夾%s成功" % dirpath)
except:
print("刪除文件夾%s異常" % dirpath)
import traceback
print(traceback.format_exc())

#os.listdir刪除文件
def rmFile(path):
files = os.listdir(path)
for file in files:
file_path = os.path.join(path, file)
if os.path.isfile(file_path):
os.remove(file_path)

# rmFile(r"D:\rpa_learn\good98\good99")
rmDirAndFile(r"D:\rpa_learn\good98\good99")


區別:
os.rmdir只刪除指定的空目錄,非空目錄刪除時會異常;
os.rmdirs刪除指定的空目錄后,非空目錄刪除時會異常; 另外,如果父目錄為空的話也會被刪除;所以要慎用;
shutil.rmtree()會刪除指定的空、非空目錄,不會報異常; 不會刪除父目錄;




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM