无法匹配文件
Unable to match the files
我想每周附加一次我的 csv 文件。每周有很多文件,但我只需按每周附加文件,这样我就可以每周发布文件,这将是一个合并的每周 CSV 文件。
文件属于这种命名约定:
MidnightJob_Results_1-02-01-2019.csv
MidnightJob_Results_1-03-01-2019.csv
MidnightJob_Results_1-04-01-2019.csv
以上格式为Week-dd-mm-yyyy
格式。
结果应该是它与本周的文件相匹配,并将它们附加到一个文件中。但是我无法让 glob 函数理解如何实现它。请推荐
import datetime;
from glob import glob
current_week =(datetime.date.today().isocalendar()[1]-1)
file_name = "MidnightJob_Results_%d-" % (current_week)
print current_week
print file_name
with open('main.csv', 'a') as singleFile:
for csv in glob("file_name*.csv"):
if csv == 'main.csv':
pass
else:
for line in open(csv, 'r'):
singleFile.write(line)
首先,您应该在 glob 函数中格式化 file_name,如下所示,然后您应该以追加模式打开文件,因为如果文件存在,您不想删除旧文件。
import datetime;
from glob import glob
current_week =(datetime.date.today().isocalendar()[1]-1)
file_name = "MidnightJob_Results_%d-" % (current_week)
print current_week
print file_name
with open('main.csv', 'a') as singleFile:
for csv in glob("%s*.csv"%(file_name)):
if csv == 'main.csv':
pass
else:
for line in open(csv, 'a+'):
singleFile.write(line)
我想每周附加一次我的 csv 文件。每周有很多文件,但我只需按每周附加文件,这样我就可以每周发布文件,这将是一个合并的每周 CSV 文件。
文件属于这种命名约定:
MidnightJob_Results_1-02-01-2019.csv
MidnightJob_Results_1-03-01-2019.csv
MidnightJob_Results_1-04-01-2019.csv
以上格式为Week-dd-mm-yyyy
格式。
结果应该是它与本周的文件相匹配,并将它们附加到一个文件中。但是我无法让 glob 函数理解如何实现它。请推荐
import datetime;
from glob import glob
current_week =(datetime.date.today().isocalendar()[1]-1)
file_name = "MidnightJob_Results_%d-" % (current_week)
print current_week
print file_name
with open('main.csv', 'a') as singleFile:
for csv in glob("file_name*.csv"):
if csv == 'main.csv':
pass
else:
for line in open(csv, 'r'):
singleFile.write(line)
首先,您应该在 glob 函数中格式化 file_name,如下所示,然后您应该以追加模式打开文件,因为如果文件存在,您不想删除旧文件。
import datetime;
from glob import glob
current_week =(datetime.date.today().isocalendar()[1]-1)
file_name = "MidnightJob_Results_%d-" % (current_week)
print current_week
print file_name
with open('main.csv', 'a') as singleFile:
for csv in glob("%s*.csv"%(file_name)):
if csv == 'main.csv':
pass
else:
for line in open(csv, 'a+'):
singleFile.write(line)