我正在使用Python编写一个文件,我希望它被放置在一个特定的路径上。
也就是说:我如何检查文件夹是否存在,与其父母一起?如果路线上缺少文件夹,我如何创建它们?
我正在使用Python编写一个文件,我希望它被放置在一个特定的路径上。
也就是说:我如何检查文件夹是否存在,与其父母一起?如果路线上缺少文件夹,我如何创建它们?
当前回答
试试 os.path.exist 函数
if not os.path.exists(dir):
os.mkdir(dir)
其他回答
但我猜你的真正意图是创建一个文件和其主目录,因为它的内容全部在1命令。
您可以使用 fastcore 扩展到 pathlib: path.mk_write(数据)
from fastcore.utils import Path
Path('/dir/to/file.txt').mk_write('Hello World')
在Fastcore文档中查看更多
你可以使用Megath。
# Create a directory and any missing ancestor directories.
# If the directory already exists, do nothing.
from distutils.dir_util import mkpath
mkpath("test")
请注意,它也将创建祖先目录。
它适用于Python 2和3。
在您的程序/项目的输入点上拨打 Create_dir() 函数。
import os
def create_dir(directory):
if not os.path.exists(directory):
print('Creating Directory '+directory)
os.makedirs(directory)
create_dir('Project directory')
使用尝试除外,并从 errno 模块的正确错误代码可以摆脱赛车状态,并是跨平台:
import os
import errno
def make_sure_path_exists(path):
try:
os.makedirs(path)
except OSError as exception:
if exception.errno != errno.EEXIST:
raise
换句话说,我们试图创建目录,但如果它们已经存在,我们会忽略错误。 另一方面,任何其他错误都会被报告. 例如,如果您提前创建 dir 'a' 并从中删除所有权限,您将获得一个 OSError 提取的 errno.EACCES (Permission denied, error 13)。
您可以使用 os.listdir 为此:
import os
if 'dirName' in os.listdir('parentFolderPath')
print('Directory Exists')