您的位置:首页 > 编程语言 > Python开发

关于python -os.mkdir(str)方法的使用记录

2014-05-08 23:09 555 查看
这几天在学习python,从昨天开始安装了ubuntu系统以后,就开始研究这个备份文件的例子,可是无论如何,总是不成功,不是说

OSError: [Errno 2] No such file or directory:

就是说

OSError: [Errno 13] Permission denied:

这些错误都是因为一个os.mkdir()的系统模块的方法,终于是把我惹急了,在这个方法之前添加了测试输出语句,完全可以执行,很明显就是这个方法搞得不对,google了一下os.mkdir();找到了一个硬货,http://bbs.chinaunix.net/thread-1313995-1-1.html,发现我原来写的target_dir里边是没有"./"的,估计是这种原因造成的,后来直接建了一个简单的python源文件,

#/!usr/bin/python
import os
os.mkdir( './image/image2' )


测试通过,完全可以执行,后来研究了一下,这个路径需要是当前路径下的子文件夹,并且需要有“./”开头,这个方式应该是资料中所说的相对目录,后来又测试了一下绝对路径,将路径修改成了'/home/zaj/mypython/e',果然起效了,我记得刚才也有这样写过,可是没有成功过阿,难道是错觉,好吧,不管怎样,我是把备份测试成功,并且初步了解了os.mkdir()的相对路径和绝对路径的创建文件夹,就这样吧,今天到此为止,运动,休息,明天继续搞,最后把测试代码贴出来,其实是简明教程里边的源码,只是对路径进行了修改,源码中真的没有加相对路径的“./”,也不知道是印刷问题还是版本问题,不管了,贴码!

#!/usr/bin/python
#Filename:backup_ver2.py
import os
import time

source = ['/home/zaj/mypython/','home/zaj/mypython/image']

target_dir = '/home/zaj/mypython/e' #这是绝对路径
#target_dir = './e'这个地方是相对路径
today = target_dir + time.strftime('%Y%m%d')

now = time.strftime('%H%M%S')
print 'daozheli'
if not os.path.exists(today):
os.mkdir(today)
print 'Successfully created directory', today

target = today + os.sep + now + '.zip'

zip_command = "zip -qr '%s' %s" % (target, ' '.join(source))
if os.system(zip_command) == 0:
print 'Successful backup to', target
else:
print 'Backup FAILED'
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: