在 Python 中创建目录
Muhammad Waiz Khan
2023年1月30日
2021年2月28日
本教程将讲解各种检查目录是否存在的方法,以及在目录不存在的情况下如何创建目录。假设我们要把一个文件保存在一个特定的路径中,比如 C:\myfolder\myfile.txt
,如果 myfolder
存在,myfile.txt
就应该保存在那里,如果不存在,我们要先创建 myfolder
目录,然后把文件保存在里面。我们可以在 Python 中使用以下方法来实现这个目标。
在 Python 中使用 os
模块的 path.exces()
和 makedirs()
方法创建目录
path.exists()
方法检查给定路径是否存在,如果存在则返回 True
,否则返回 False
。makedirs()
将路径作为输入,并创建路径中缺少的中间目录。
下面的代码示例演示了如何在 Python 中检查目录的存在,并在它不存在的情况下创建它。
import os
if not os.path.exists('parentdirectory/mydirectory'):
os.makedirs('parentdirectory/mydirectory')
我们也可以使用 makedirs()
方法的 try ... except
语句来检查目录是否存在,否则就创建目录。
try:
os.makedirs('parentdirectory/mydirectory')
except FileExistsError:
pass
在 Python 中使用 pathlib
模块的 Path.mkdir()
方法创建目录
在 Python 3.5 及以上版本中,Path.mkdir()
方法将路径作为输入,并创建路径中任何缺失的目录,包括父目录,如果 parents
标志为 True
。如果 parents
标志为 False
时缺少父目录,Path.mkdir
将返回 FileNotFoundError
,但仍将创建中间目录。exist_OK
默认为 False
,意味着如果给定的目录已经存在,它会引发 FileExistsError
。当 exist_OK
为 True
时,它将忽略 FileExistsError
。
要检查目录是否存在,如果不存在则创建,我们需要将目录路径传递给 Path.mkdir()
方法,同时设置所需的标志 True
。下面的示例代码演示了如何使用 Path.mkdir()
来完成这个任务。
from pathlib import Path
path = Path("parentdirectory/mydirectory")
path.mkdir(parents=True, exist_ok=True)