Python os.rmdir()
os模块中的所有函数在文件名和路径无效或不可访问,或其他具有正确类型但操作系统不接受的参数时都会引发OSError。
Python中的os.rmdir()方法用于删除指定路径的目录。如果指定的路径不是空目录,将引发OSError。
语法:os.rmdir(path,*,dir_fd =None)
参数:
path:表示文件路径的类路径对象。类路径对象是表示路径的字符串或字节对象。
dir_fd(可选):指向目录的文件描述符。这个参数的默认值是None。
如果指定的路径是绝对路径,则忽略dir_fd。
注意:参数列表中的’ * ‘表示以下所有参数(在我们的例子中是’ dir_fd ‘)都是仅关键字参数,可以使用它们的名称提供它们,而不是作为位置参数。
返回类型:此方法不返回任何值。
示例1
使用os.rmdir()方法来删除一个空目录
# Python program to explain os.rmdir() method
# importing os module
import os
# Directory name
directory = "ihritik"
# Parent Directory
parent = "/home/User/Documents"
# Path
path = os.path.join(parent, directory)
# Remove the Directory
# "ihritik"
os.rmdir(path)
print("Directory '%s' has been removed successfully" %directory)
输出:
Directory 'ihritik' has been removed successfully
示例2
处理使用os.rmdir()方法时的错误
# Python program to explain os.rmdir() method
# importing os module
import os
# Directory name
directory = "ihritik"
# Parent Directory
parent = "/home/User/Documents"
# Path
path = os.path.join(parent, directory)
# Remove the Directory
# "ihritik"
try:
os.rmdir(path)
print("Directory '%s' has been removed successfully" %directory)
except OSError as error:
print(error)
print("Directory '%s' can not be removed" %directory)
# if the specified path
# is not an empty directory
# then permission error will
# be raised
# similarly if specified path
# is invalid or is not a
# directory then corresponding
# OSError will be raised
输出:
[Errno 13] Permission denied: '/home/User/Documents/ihritik'
Directory 'ihritik' can not be removed