我是一名新手程序员,我开始阅读A Byte of Python。本书的第一个问题是需要解决以下问题的程序:“创建所有重要文件的备份”。这是该计划的设计:
要备份的文件和目录在列表中指定。
备份必须存储在主备份目录中。
将文件备份到zip文件中。
zip存档的名称是当前日期和时间。
这是实施:
import os
import time
source = ['/Users/swa/notes']
target_dir = '/Users/swa/backup'
target = target_dir + os.sep + \
time.strftime('%Y%m%d%H%M%S') + '.zip'
if not os.path.exists(target_dir):
os.mkdir(target_dir)
zip_command = "zip -r {0} {1}".format(target,
' '.join(source))
print "Zip command is:"
print zip_command
print "Running:"
if os.system(zip_command) == 0:
print 'Successful backup to', target
else:
print 'Backup FAILED'
我不明白
target = target_dir + os.sep + \
time.strftime('%Y%m%d%H%M%S') + '.zip'
if not os.path.exists(target_dir):
os.mkdir(target_dir)
zip_command = "zip -r {0} {1}".format(target,
' '.join(source))
一部分。我已经搜索了python文档,以了解os.sep和os.mkdir以及time.strftime ...是什么,但如果有人能够向我解释这一切,我将非常感激
答案 0 :(得分:1)
os.sep
是一个独立于平台的文件分隔符字符串。具体来说,在Windows上它是' \'在其他操作系统上,它是' /'。
os.mkdir
从给定路径创建目录。如果文件或目录已存在,则会引发异常。
time.strftime('%Y%m%d%H%M%S')
将时间日期时间格式化为格式为%Y的字符串替换为四位数年份,%m是月份作为整数,%d是月份的日期,%H是小时, %M是分钟,%S是秒。