'''清洗工具-判断文件夹名称是否为日期格式字符串'''
# 写入函数代码块之前,先加载相应模块,生成相应默认参数

# False if (x== '') or (x in [None, pd.NaT]) or (type(x)!= str)
# 无论是否指定format, pd.to_datetime(pd.NaT)都输出NaT
# 无论是否指定format, pd.to_datetime(None)都输出None
# 如果不指定format(即默认format=None),则pd.to_datetime('')输出NaT,否则引发ValueError
# 如果不指定format(即默认format=None),则输入数字格式(int64, float等),输出1970-01-01 00:00:(00+该数字*e-09),否则引发ValueError

def canbe_date(x:str="0", x_format=str_format_2):
    if x in [None, pd.NaT]:
        return False
    elif (x== '') or (type(x)!= str):
        return False
    try:
        pd.to_datetime(x, format=x_format)
        return True
    except:
        return False

'''清洗工具-判断字符串是否为日期,并且是否早于指定日期'''
# 写入函数代码块之前,先加载相应模块,生成相应默认参数
def is_BeforeDate(x:str="0", x_format=str_format_2, timestamp_y=timestamp_date_before):
    if canbe_date(x, x_format):
        timestamp_x = pd.to_datetime(x, format=x_format)
        if timestamp_x < timestamp_y:
            return True
        else:
            return False
    else:
        return False