python 在给定一系列日期和文件模板的情况下查找丢失的文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 在给定一系列日期和文件模板的情况下查找丢失的文件相关的知识,希望对你有一定的参考价值。
#!/usr/bin/env python
from datetime import date, datetime, timedelta
from os.path import isfile, basename
import sys
from string_utils.strings import replace_vars_in_string
script_name = basename(__file__)
def usage():
print('{} [START-DATE] [END-DATE] [FILE-TEMPLATE]'.format(script_name))
print('')
print(' where:')
print('')
print(' START-DATE start date (YYYYMMDD)')
print(' END-DATE end date (YYYYMMDD)')
print(' FILE-TEMPLATE file template (use {yyyy}, {mm}, and {dd})')
print('')
print(' For example:')
print('')
print(' {} 20140101 20141231 /data/{{yyyy}}/{{mm}}/{{dd}}/data-file-{{yyyy}}{{mm}}{{dd}}.txt'.format(script_name))
print('')
def main():
try:
start_date = sys.argv[1]
end_date = sys.argv[2]
file_template = sys.argv[3]
except IndexError:
usage()
sys.exit(2)
start_date_obj = datetime.strptime(start_date, '%Y%m%d')
end_date_obj = datetime.strptime(end_date, '%Y%m%d')
date_list = [(start_date_obj + timedelta(days=i)).strftime('%Y%m%d') for i in range((end_date_obj - start_date_obj).days + 1)]
none_missing = True
for date in date_list:
v = {'yyyy': date[0:4], 'mm': date[4:6], 'dd': date[6:8]}
file = replace_vars_in_string(file_template, **v)
if not isfile(file):
none_missing = False
print('Missing file: {}'.format(file))
if none_missing:
print('No missing files...')
if __name__ == '__main__':
main()
以上是关于python 在给定一系列日期和文件模板的情况下查找丢失的文件的主要内容,如果未能解决你的问题,请参考以下文章
在给定一组地理坐标的情况下获取友好的位置名称?
是否可以在给定一组约束的情况下获得计算出的帧?
(模板)hdoj1251(字典树模板题)
如何在 python 的正则表达式中指定一系列 unicode 字符? [复制]
使用 python 编辑 .odt 文件
如何在python烧瓶中获取具有本地时区的模板文件的修改日期