Python中如何删除一个文件

Python012

Python中如何删除一个文件,第1张

使用Python删除文件有多种方法,但是最好的方法如下:

os.remove()删除文件

os.unlink()删除文件

shutil.rmtree()删除目录及其下面所有内容

pathlib.Path.unlink()在Python3.4及更高版本中用来删除单个文件pathlib模块

os.remove()删除文件

Python中的OS模块提供了与操作系统进行交互的功能。OS属于Python的标准实用程序模块。该模块提供了使用依赖于操作系统的功能的便捷式方法。

python中的os.remove()方法用于删除文件路径。此方法无法删除目录。如果指定的路径是目录,则该方法将引发OSError。

注意:可以使用os.rmdir()删除目录。

使用os.unlink()删除Python文件

os.unlink()是os.remove()的别名。在Unix OS中,删除也称为unlink。

注意:所有功能和语法与os.unlink()和os.remove()相同。它们都用于删除Python文件路径。两者都是Python标准库的os模块中执行删除功能的方法。

它有两个名称,别名:os.unlink()和os.remove()。

为同一个函数提供两个别名的可能原因是,该模块的维护者认为,许多程序员可能会从C的底层编辑转向Python,其中库函数和底层系统调用称为unlink(),而其他人则可能会使用rm命令或shell脚本来简化语言。

使用shutil.rmtree()删除Python文件

shutil.rmtree():删除指定的目录,所有子目录和所有文件。此功能特别危险,因为它无需检查即可删除所有内容。结果,您可以使用此功能轻松丢失数据。

rmtree()是shutil模块下的一种方法,该方法以递归方式删除目录及其内容。

使用pathlib.Path.unlink()删除文件

pathlib模块在Python3.4及更高版本中可用。如果要在Python2中使用此模块,可以使用pip进行安装。pathlib提供了一个面向对象的界面,用于处理不同操作系统的文件系统路径。

要使用pathlib模块删除文件,请创建一个指向该文件的Path对象,然后对该对象调用unlink()方法。

python删除文件夹或者文件时;可以使用os和shutil模块相关的命令

os模块提供的方法

1.os.remove(path)   #path是文件路径,如果path是一个文件夹路径时,会抛出OSError错误

2.os.unlink(path)  #path功能和remove一致,但是删除一个正在使用的文件时会报错

3.os.rmdir(path)  #path是文件夹路径,注意此时文件夹是要空才能被删除,如果文件夹不为空时,要先删除文件夹下的文件后,才能使用此命令

4.os.removedirs(path)  #path递归地删除目录,如果子目前成功被删除,则将会成功删除父目录,子目录没有成功删除,将抛出异常

shutil模块提供的方法有:

1.shutil.rmtree(dir)  #dir为目录,可以删除有内容的目录

2.shutil.rmdir(dir)  #dir为目录,只能删除空目录

os包的rmdir()函数可以用来删除一个文件夹,但是文件夹必须是空的。一种可行的方法是读取文件夹的文件列表,逐个删除文件夹中的所有文件,然而文件夹中可能还有文件夹,因此这是一个递归的操作。\x0d\x0ashutil包rmtree()函数就实现了以上功能。shutil是一个高级文件操作的包,实现了文件及文件集合复制与删除的功能。rmtree()函数接收非空文件夹的路径这唯一一个参数。示例代码如下:\x0d\x0aimport shutil\x0d\x0apath = 'g:\zhidao'\x0d\x0ashutil.rmtree(path)