检查一个文件夹是否存在,如果不存在就创建它
2016-09-13 15:39
435 查看
filename = "/my/directory/filename.txt" dir = os.path.dirname(filename) try: os.stat(dir) except: os.mkdir(dir) f = file(filename)
我忘记了
os.path.exists(多谢张三,李四,王五的提醒).下面是更改的:
def ensure_dir(f): d = os.path.dirname(f) if not os.path.exists(d): os.makedirs(d)
有什么"打开"的标记可以自动的运行?
我看了俩答案都很好,但是都有一点缺陷,所以给出我的:
先试
os.path.exists,然后通过
os.makedirs来创建.
if not os.path.exists(directory): os.makedirs(directory)
标注一下-如果一个文件在调用
os.path.exists和
os.makedirs之间被创建了,将会出现一个
OSError.遗憾的是捕获
OSError异常继续进行并不是万无一失的,它将会忽略像磁盘空间不足,没有足够权限等一些其他造成文件创建失败的因素.
一个做法是捕获
OSError异常并检查返回的错误代码(前提是知道错误代码对应的是什么).然而,还有另一种可能,第二次的
os.path.exists.假如恰好在第一次检查的时候创建了文件夹,然后在第二次检查的时候删掉--我们被耍了~~
根据不同的应用,并行操作的危险或多或少的比其他因素危险.开发者必须在选择开发环境的时候更多地了解特定的应用程序.
相关文章推荐
- 检查目标文件夹是否存在,如果不存在则自动创建该目录
- 在vc6中检查一个目录是否存在,如果不存在就创建该目录
- 检查给定目录是否存在,如果不存在则创建该目录
- 哈哈,今天我又学会一小招——判断硬盘上是否存在某个文件夹,如果不存在则自动创建。
- 检查文件夹是否存在,不存在则创建
- ASP函数:检查文件夹是否存在,不存在则创建文件夹
- 检查给定目录是否存在,如果不存在则创建该目录
- 判断本地系统目录下是否存在XML文件,如果不存在就创建一个XMl文件,若存在就在里面执行添加数据
- 如何判断一个已知的表中是否存在某个字段,如果不存在就创建它.
- 判断本地系统目录下是否存在XML文件,如果不存在就创建一个XMl文件,若存在就在里面执行添加数据
- 如何判断一个已知的表中是否存在某个字段,如果不存在就创建它.
- 检查一个路径下文件是否存在,如果不存在设置一个定时器,在定时器内每隔一定时间检查一次,直到该文件存在返回成功,或者定时超时返回失败
- php判断文件夹是否存在,不存在则创建
- 判断文件夹是否存在,不存在则创建文件夹
- ORACLE中判断表或视图是否存在,如果不存在再创建的方法
- VC++ 判断文件夹是否存在,若不存在,创建新文件夹
- 检查指定目录是否存在,不存在直接创建
- vc判断文件夹是否存在,及创建一个文件夹
- Doc的窗口就创建一个,如果已经存在就激活那个窗口,不存在就建立Doc(转自CSDN)
- 判断文件夹是否存在,不存在则创建文件夹