python删除文件与目录的方法
生活随笔
收集整理的這篇文章主要介紹了
python删除文件与目录的方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
python內置方法刪除目錄(空目錄與非空目錄)及文件
1、os.remove(file_path):刪除文件
#PPTV是文件夾,xen.txt是文件
>>> os.remove('PPTV')
Traceback (most recent call last):
File "<pyshell#9>", line 1, in <module>
os.remove('PPTV')
PermissionError: [WinError 5] 拒絕訪問。: 'PPTV'
>>> os.remove('xen.txt')
>>> os.unlink('xen.txt')
注:
file_path如果是目錄則拋出異常
remove()同 unlink() 的功能是一樣的
2、os.removedirs(path):遞歸刪除目錄
目錄必須為空目錄,若目錄被刪除,removedirs則會繼續刪除父目錄;子目錄未刪除成功則報錯
例子:
os.removedirs(“foo/bar/ba”) 將首先刪除 “foo/bar/ba”目錄,如果foo/bar是空,則會繼續刪除foo/bar,foo若為空則會繼續刪除foo
如果子目錄不能成功刪除,將 拋出異常
3、os.rmdir(path):刪除目錄
刪除目錄 path,要求path必須是個空目錄,否則拋出OSError錯誤
4、遞歸刪除目錄和文件
1、通過shutil.rmtree(path)刪除:
>>> print(subprocess.getoutput('tree pytest'))
卷 工作 的文件夾 PATH 列表
卷序列號為 00000002 2C55:35CD
E:CHENGD_FTP_CLIENTMODULEPYTEST
├─.idea
└─test_dirs
>>> shutil.rmtree('e:\chengd_ftp_client\module\pytest')
>>> print(subprocess.getoutput('tree pytest'))
卷 工作 的文件夾 PATH 列表
卷序列號為 00000002 2C55:35CD
E:CHENGD_FTP_CLIENTMODULEPYTEST
無效的路徑 - CHENGD_FTP_CLIENTMODULEPYTEST
沒有子文件夾
2、通過os.walk方法刪除:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os
import subprocess
obj_dir = 'E:chengd_ftp_clientmodulemtest'
for root, dirs, files in os.walk(obj_dir, topdown=False):
for name in files:
print(name)
os.remove(os.path.join(root, name))
for name in dirs:
print(name)
os.rmdir(os.path.join(root, name))
總結
以上是生活随笔為你收集整理的python删除文件与目录的方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: awx文件解析_Android so(E
- 下一篇: 怎么创建具有真实纹理的CG场景岩石?