分享几个常用的自定义函数

直接上干货

实现功能:获取当天以后的下一个工作日

'''

需要安装第三方库 chinese_calender

'''

#导包

from chinese_calendar import is_workday

def get_next_bus_day():

    # 实例化 calendar 对象

    cal = Calendar()

    # 获取当天日期

    today_date = datetime.datetime.today()

    # 将日期格式化为 xxxx.xx.xx 格式

    creat_items_date = today_date.strftime(‘%Y.%m.%d’)

    # 获取下一下工作日

    next_budiness_date = cal.addbusdays(today_date, 1)

    # 将日期格式化为 xxxx.xx.xx 格式

    creat_items_date = next_budiness_date.strftime(‘%Y.%m.%d’)

    # 返回下一个工作日

    return creat_items_date

实现功能:保留最近三天的文件夹

'''

使用到的第三方库都是 python 自带的,无需安装第三方库

使用到的包:shutil、os、datetime

'''

#导包

import shutil

import os

import datetime

def clear_history(history_dir, indate):

    # 列出文件夹中的所有文件

    history_list = os.listdir(history_dir)

    # 获取当天日期并格式化为年月日格式

    today = datetime.datetime.strftime(datetime.datetime.today(), ‘%Y%m%d’)

    # 获取距离当天最远的有效日期,截止日

    deadline =datetime.datetime.today()- datetime.timedelta(days=indate)

    # 循环处理

    for i in history_list:

        # 字符串类型的日期转化为日期格式

        i_date = datetime.datetime.strptime(i, ‘%Y%m%d’)

        # 判断是否小于截止日

        if i_date <= deadline:

            # 字符串拼接

            i_path = os.path.join(history_dir, i)

            print(f’{i_path} 不在有效期,删除该文件夹’)

            # 删除文件夹

            shutil.rmtree(i_path, ignore_errors=True)

        else:

            print(f’{i} 文件夹在有效期’)

实现功能:os 模块指定路径创建文件夹

'''

只是用到 python 自导的 os 库

'''

def mkdir(path):

    # 字符串去空

    path=path.strip()

    # 判断文件是否存在

    isExists=os.path.exists(path)

    # 判断结果

    if not isExists:

        # 创建文件夹

        os.makedirs(path)

        print(path, “create successfully”)

        # 返回真

        return True

    else:

        # 如果目录存在则不创建,并提示目录已存在

        print(path, ‘dir has existed’)

        # 返回假

        return False