zoukankan      html  css  js  c++  java
  • python获取指定间隔日期列表

    1.获取指定年份月份之间的间隔日期列表

    import datetime
    from calendar import Calendar
    
    
    def get_year_dates(year: int, date_format: str = '%Y%m%d', start_month=1, end_month=12):
        """
        获取指定年份月份的所有日期
        :param year: int
        :param date_format:
        :param start_month: 默认开始月份从1月份开始,即返回当年所有日期
        :return: -> list[str]  某年从开始月份第一天起到年底的所有日期
        """
        date_list = []
        c = Calendar(year)
        for i in range(start_month, end_month + 1):
            for week in c.monthdatescalendar(year, i):
                for date in week:
                    if date.year == year and start_month <= date.month <= end_month:
                        date = date.strftime(date_format)
                        if date not in date_list:
                            date_list.append(date)
        get_logger().info('get_year_dates, year=%s, start_month=%s, end_month=%s, date_list=%s' % (year, start_month, end_month, date_list))
        return date_list

    2.获取指定起止时间之间的间隔日期列表

    import datetime
    def get_date_list(start_date, end_date, format):
        """
        根据开始日期、结束日期返回这段时间里所有天的集合
        :param start_date: 开始日期(日期格式或者字符串格式)
        :param end_date: 结束日期(日期格式或者字符串格式)
        :param format: 格式化字符串, 如: '%Y-%m-%d'
        :return:
        """
        date_list = []
        if isinstance(start_date, str) and isinstance(end_date, str):
            start_date = datetime.datetime.strptime(start_date, '%Y-%m-%d')
            end_date = datetime.datetime.strptime(end_date, '%Y-%m-%d')
        date_list.append(start_date.strftime(format))
        while start_date < end_date:
            start_date += datetime.timedelta(days=1)
            date_list.append(start_date.strftime(format))
        return date_list
    每天逼着自己写点东西,终有一天会为自己的变化感动的。这是一个潜移默化的过程,每天坚持编编故事,自己不知不觉就会拥有故事人物的特质的。 Explicit is better than implicit.(清楚优于含糊)
  • 相关阅读:
    asp.net实现页面跳转后不可以返回
    Response.Write的alert换行问题
    ASP.NET 中关GridView里加入CheckBox 在后台获取不到选中状态的问题
    将Windows网络适配器共享网络的ip:192.168.137.1 改为其他IP
    windows设置照片查看器为默认的照片查看软件
    Android--UI之ImageView
    Android--UI之DatePicker、TimePicker...
    Android--UI之ProgressBar
    Android--UI之Radio、Check、Toggle
    Android--UI之Button
  • 原文地址:https://www.cnblogs.com/kylin5201314/p/15113095.html
Copyright © 2011-2022 走看看