9.1.3 永久删除文件和文件夹

9.1.3 永久删除文件和文件夹,第1张

9.1.3 永久删除文件文件

利用 os 模块中的函数,可以删除一个文件或一个空文件夹。但利用 shutil 模块,
可以删除一个文件夹及其所有的内容。
•    用 os.unlink(path)将删除 path 处的文件。
•    调用 os.rmdir(path)将删除 path  处的文件夹。该文件夹必须为空,其中没有任何文件和文件夹。
•    调用 shutil.rmtree(path)将删除 path 处的文件夹,它包含的所有文件和文件夹都会被删除。
在程序中使用这些函数时要小心!可以第一次运行程序时,注释掉这些调用,并且加上 print()调用,显示会被删除的文件。这样做是一个好主意。下面有一个 Python  程序,本来打算删除具有.txt  
扩展名的文件,但有一处录入错误(用粗体突出显示 ),结果导致它删除了.rxt 文件。
import  os
for  filename  in  os.listdir():
if  filename.endswith('.rxt'): os.unlink(filename)
如果你有某些重要的文件以.rxt  结尾,它们就会被不小心永久地删除。作为替代,你应该先运行像这样的程序:
import  os
for  filename  in  os.listdir():
if  filename.endswith('.rxt'): #os.unlink(filename) print(filename)
现在 os.unlink()调用被注释掉,所以 Python 会忽略它。作为替代,你会打印出将被删除的文件名。先运行这个版本的程序,你就会知道,你不小心告诉程序要删除.rxt 文件,而不是.txt 
文件。
在确定程序按照你的意图工作后, 删除 print(filename) 代码行, 取消 
os.unlink(filename)代码行的注释。然后再次运行该程序,实际删除这些文件。
 

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5670297.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存