首页 > 解决方案 > 在 Python 中拆分列表字符串并测试日期

问题描述

我想将文件从以前的日期移动到存档文件夹。我有一个目录,其中包含定期更新的社区数据库(每天,但有时一天多次)。这些数据库如下所示:Database_NeighbourhoodA_v1.001_DT2020-05-11_c1.xlsx_DT显示更新日期之后和显示日期之后_ccount/version位置,因此在这种情况下,这是昨天的第一次更新,第二次更新将由c2etc 表示。然后有一个子文件夹在这个调用的目录Archive中,我想从以前的日期移动/保存数据库(连同将版本计数替换_c_last.

import os
import glob
from datetime import date
import shutil
import os.path

todaydate = date.today()

currentdatabases = glob.glob('./Databases/*Database_Neighbourhood*')

for database in currentdatabases:
    currentdatabases = str(currentdatabases)
    oldfiledate_part1 = currentdatabases.split("_DT")[1]
    oldfiledate_part2 = oldfiledate_part1.split("_c")[0]
    if oldfiledate_part2 != todaydate:
        lastfile_part1 = oldfile.split("_c")[0] + "_last.xlsx"
        lastfile_part2 = './Databases/Archive/' + lastfile_part1
        shutil.move(currentdatabases, lastfile_part2)

首先,我创建一个等于今天日期的变量。然后我通过利用搜索目录中的邻域数据库(目录中global还有其他文件)。然后我遍历目录中的所有这些数据库以查看日期是否不等于当前日期,然后将它们移动_last到存档中。我通过将路径字符串拆分为日期部分并为此设置条件来做到这一点。

怎样才能达到预期的效果?

标签: pythonarrayslistloopsdate

解决方案


推荐阅读