网站首页 > 教程文章 正文
os.makedirs()方法
python标准库os方法makedirs(),可用于递归创建目录。默认情况下,如果所要创建的目录已经存在,那么python将抛出OSError。其中的“递归”的意思是,如果makedirs()参数指定所要创建的目标目录中的某一个节点路径不存在,则makedirs()会自动创建该节点路径,这是makedirs()与mkdir()方法不同的地方之一。具体的可以看下方的实例代码。
os.makedirs()语法及参数结构
os.makedirs(path, mode=0o777, exist_ok=False)
1、path参数指定os.makedirs()方法所要创建的目录
2、mode参数指定权限模式
3、exist_ok参数默认值为False,即当目标目录已经存在,python抛出OSError。
os.makedirs()返回值
用于创建目录,无返回值。
os.makedirs()实例代码
提示:如下代码是在mac系统中运行输出的:
import os
>>> os.getcwd()
'/Users/z' #这是当前的工作目录
>>> path = '/Users/z/makedirs'
>>> os.makedirs(path) #根据path创建目标目录,可以在对应的路径下查看文件夹是否已创建
>>> os.makedirs(path) #如果目标目录已经创建,那么再次创建,默认情况下将抛出FileExistsError
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/opt/anaconda3/lib/python3.7/os.py", line 221, in makedirs
mkdir(name, mode)
FileExistsError: [Errno 17] File exists: '/Users/z/makedirs'
>>> os.makedirs(path,exist_ok=True) #如果目标目录已经存在,再次创建,并制定exist_ok为True,python不抛出error
>>> path2 = '/Users/z/makedirs/a/b' #该目标目录中,目标文件夹b和节点路径a这两个文件夹都不存在
>>> os.mkdir(path2) #使用mkdir()方法创建path2目标目录,因为中间的a文件夹并不存在,python抛出FileNotFoundError
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
FileNotFoundError: [Errno 2] No such file or directory: '/Users/z/makedirs/a/b'
>>> os.makedirs(path2) #使用makedirs()创建path2目标目录,则可递归创建,而不会因为中间的a文件夹不存在而抛出error
>>> os.makedirs(path2) #再次调用makedirs()创建path2目录,python抛出FileExistsError,说明目录已创建成功
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/opt/anaconda3/lib/python3.7/os.py", line 221, in makedirs
mkdir(name, mode)
FileExistsError: [Errno 17] File exists: '/Users/z/makedirs/a/b'
python全栈编程:
原文链接:
- 上一篇: KVM虚拟机安装OpenWRT
- 下一篇: Python 开发工程师必会的 5 个系统命令操作库
猜你喜欢
- 2025-05-28 21-Python-文件操作
- 2025-05-28 为你的python程序上锁:软件序列号生成器
- 2025-05-28 用Python做个“冰墩墩雪容融”桌面部件(好玩又有趣)
- 2025-05-28 Dify工具使用全场景:通过文本生成word的指南(功能篇·第4期)
- 2025-05-28 Pytorch入门-Day9:数据加载(Dataset与DataLoader)
- 2025-05-28 2025年必学的Python自动化办公的15个实用脚本
- 2025-05-28 自学Python第二天
- 2025-05-28 ScalersTalk 成长会 Python 小组第 9 周学习笔记
- 2025-05-28 怎么做到的?用python制作九宫格图片,太棒了
- 2025-05-28 利用Dask构建端到端数据处理:从数据摄取到数据库加载的实战指南
- 最近发表
- 标签列表
-
- location.href (44)
- document.ready (36)
- git checkout -b (34)
- 跃点数 (35)
- 阿里云镜像地址 (33)
- qt qmessagebox (36)
- mybatis plus page (35)
- vue @scroll (38)
- 堆栈区别 (33)
- 什么是容器 (33)
- sha1 md5 (33)
- navicat导出数据 (34)
- 阿里云acp考试 (33)
- 阿里云 nacos (34)
- redhat官网下载镜像 (36)
- srs服务器 (33)
- pico开发者 (33)
- https的端口号 (34)
- vscode更改主题 (35)
- 阿里云资源池 (34)
- os.path.join (33)
- redis aof rdb 区别 (33)
- 302跳转 (33)
- http method (35)
- js array splice (33)