列出名称包含python日期字符串的文件

时间:2015-03-05 12:10:34

标签: python

我有这个代码列出像' * 20150304.csv'但什么都不返回

#!/usr/bin/env python
dir_local = '/var/log/'

import os
import glob
from datetime import date, timedelta

today = date.today
yesterday = date.today() - timedelta(1)
YEST = yesterday.strftime('%Y%m%d')

glob_pattern='*YEST.csv'

for fname in glob.glob(dir_local + os.sep + glob_pattern):
    print fname

然而,当我用

替换
for fname in glob.glob('/var/log/' + os.sep + '*20150304.csv'):

我得到了理想的结果,虽然日期会每天都在变化,因此需要列出新文件。 我能做什么?

我已阅读此链接list is coming as blank in python,但我们没有看到同样的问题。

2 个答案:

答案 0 :(得分:0)

您只需要将当前日期(或昨天的日期?)生成为字符串。试试这个:

yesterday = datetime.date.today() - datetime.timedelta(days=1)
yesterday.strftime('%Y%m%d')

现在您可以将其放在glob

答案 1 :(得分:0)

替换:

glob_pattern='*YEST.csv'

使用:

glob_pattern = '*{0}.csv'.format(YEST)