解决python os.mkdir创建目录失败的问题

yipeiwu_com6年前Python基础

起因

今天使用 python os.mkdir创建目录时遇到的一个小问题:

feature_dir = os.path.join(os.getcwd(), 'system', 'feature')
if not os.path.exists(feature_dir):
 os.mkdir(feature_dir)

结果提示错误: OSError: [Errno 2] No such file or directory: '/home/hyb/hyb_speech/2_word/applications/system/feature'

原因

查了一下原因,发现是因为 feature 的上一级目录 system 也没有创建的缘故。

具体原因,如下:

1.mkdir( path [,mode] )

作用:创建一个目录,可以是相对或者绝对路径,mode的默认模式是0777。

如果目录有多级,则创建最后一级。如果最后一级目录的上级目录有不存在的,则会抛出一个OSError。

2.makedirs( path [,mode] )

作用: 创建递归的目录树,可以是相对或者绝对路径,mode的默认模式也是0777。

如果子目录创建失败或者已经存在,会抛出一个OSError的异常,Windows上Error 183即为目录已经存在的异常错误。如果path只有一级,与mkdir一样。

解决

解决方法:

1、先创建 system,再创建 feature;

2、直接使用 os.makedirs(feature_dir)。

以上这篇解决python os.mkdir创建目录失败的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python Web框架之Django框架Model基础详解

本文实例讲述了Python Web框架之Django框架Model基础。分享给大家供大家参考,具体如下: model是关于你的数据的单一的,确定的信息来源。 它包含您正在存储的数据的基本...

Pyramid Mako模板引入helper对象的步骤方法

原理是我们在pyramind的before render event 中插入我们的helper 1. 创建helper.py文件,在里面添加上我们常用的方法 2. 在__init__.p...

PyQt5每天必学之进度条效果

PyQt5每天必学之进度条效果

进度条是,当我们处理冗长的任务时使用的控件。它是以动画的形式让用户知道该任务正在取得进展。该QProgressBar控件提供一个水平或垂直进度条。程序员可以设置进度条的最小值和最大值。默...

python高级特性和高阶函数及使用详解

python高级特性和高阶函数及使用详解

python高级特性 1、集合的推导式 •列表推导式,使用一句表达式构造一个新列表,可包含过滤、转换等操作。 语法:[exp for item in collection i...

python selenium执行所有测试用例并生成报告的方法

直接上代码。 # -*- coding: utf-8 -*- import time import os import os.path import re import unitte...